projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Rollback INLINE patches
[ghc-hetmet.git]
/
compiler
/
basicTypes
/
Id.lhs
diff --git
a/compiler/basicTypes/Id.lhs
b/compiler/basicTypes/Id.lhs
index
012e42b
..
d87e45b
100644
(file)
--- a/
compiler/basicTypes/Id.lhs
+++ b/
compiler/basicTypes/Id.lhs
@@
-68,6
+68,7
@@
module Id (
idArity,
idNewDemandInfo, idNewDemandInfo_maybe,
idNewStrictness, idNewStrictness_maybe,
idArity,
idNewDemandInfo, idNewDemandInfo_maybe,
idNewStrictness, idNewStrictness_maybe,
+ idWorkerInfo,
idUnfolding,
idSpecialisation, idCoreRules, idHasRules,
idCafInfo,
idUnfolding,
idSpecialisation, idCoreRules, idHasRules,
idCafInfo,
@@
-85,6
+86,7
@@
module Id (
setIdArity,
setIdNewDemandInfo,
setIdNewStrictness, zapIdNewStrictness,
setIdArity,
setIdNewDemandInfo,
setIdNewStrictness, zapIdNewStrictness,
+ setIdWorkerInfo,
setIdSpecialisation,
setIdCafInfo,
setIdOccInfo, zapIdOccInfo,
setIdSpecialisation,
setIdCafInfo,
setIdOccInfo, zapIdOccInfo,
@@
-132,6
+134,7
@@
infixl 1 `setIdUnfolding`,
`setIdArity`,
`setIdNewDemandInfo`,
`setIdNewStrictness`,
`setIdArity`,
`setIdNewDemandInfo`,
`setIdNewStrictness`,
+ `setIdWorkerInfo`,
`setIdSpecialisation`,
`setInlinePragma`,
`idCafInfo`
`setIdSpecialisation`,
`setInlinePragma`,
`idCafInfo`
@@
-531,6
+534,14
@@
isStrictId id
(isStrictType (idType id))
---------------------------------
(isStrictType (idType id))
---------------------------------
+ -- WORKER ID
+idWorkerInfo :: Id -> WorkerInfo
+idWorkerInfo id = workerInfo (idInfo id)
+
+setIdWorkerInfo :: Id -> WorkerInfo -> Id
+setIdWorkerInfo id work_info = modifyIdInfo (`setWorkerInfo` work_info) id
+
+ ---------------------------------
-- UNFOLDING
idUnfolding :: Id -> Unfolding
idUnfolding id = unfoldingInfo (idInfo id)
-- UNFOLDING
idUnfolding :: Id -> Unfolding
idUnfolding id = unfoldingInfo (idInfo id)