X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2FsimplStg%2FLambdaLift.lhs;h=29ed3952b6d46d13ef73819df98fda72e9c64e4b;hb=7a3bd641457666e10d0a47be9f22762e03defbf0;hp=5f14b609f27003699e5a066d931be5cd0fe6cb3a;hpb=f65044d135ef61bee82a6c9767235f6780bdf00e;p=ghc-hetmet.git diff --git a/ghc/compiler/simplStg/LambdaLift.lhs b/ghc/compiler/simplStg/LambdaLift.lhs index 5f14b60..29ed395 100644 --- a/ghc/compiler/simplStg/LambdaLift.lhs +++ b/ghc/compiler/simplStg/LambdaLift.lhs @@ -13,12 +13,13 @@ IMP_Ubiq(){-uitous-} import StgSyn import Bag ( emptyBag, unionBags, unitBag, snocBag, bagToList ) -import Id ( idType, mkSysLocal, addIdArity, +import Id ( idType, mkSysLocal, addIdArity, mkIdSet, unitIdSet, minusIdSet, unionManyIdSets, idSetToList, SYN_IE(IdSet), nullIdEnv, growIdEnvList, lookupIdEnv, SYN_IE(IdEnv) ) -import SrcLoc ( mkUnknownSrcLoc ) +import IdInfo ( ArityInfo, exactArity ) +import SrcLoc ( noSrcLoc ) import Type ( splitForAllTy, mkForAllTys, mkFunTys ) import UniqSupply ( getUnique, splitUniqSupply ) import Util ( zipEqual, panic, assertPanic ) @@ -441,8 +442,8 @@ newSupercombinator :: Type -> LiftM Id newSupercombinator ty arity ci us idenv - = (mkSysLocal SLIT("sc") uniq ty mkUnknownSrcLoc) -- ToDo: improve location - `addIdArity` arity + = (mkSysLocal SLIT("sc") uniq ty noSrcLoc) -- ToDo: improve location + `addIdArity` exactArity arity -- ToDo: rm the addIdArity? Just let subsequent stg-saturation pass do it? where uniq = getUnique us