X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=ghc%2Fcompiler%2FsimplCore%2FFoldrBuildWW.lhs;h=19ec58c8f9c80bf61bcd084996a2ab1d40bdc9fe;hb=5eb1c77c795f92ed0f4c8023847e9d4be1a4fd0d;hp=55a0e318141f4edf5ce1c7d2c52b5d271a4873ab;hpb=5cf27e8f1731c52fe63a5b9615f927484164c61b;p=ghc-hetmet.git diff --git a/ghc/compiler/simplCore/FoldrBuildWW.lhs b/ghc/compiler/simplCore/FoldrBuildWW.lhs index 55a0e31..19ec58c 100644 --- a/ghc/compiler/simplCore/FoldrBuildWW.lhs +++ b/ghc/compiler/simplCore/FoldrBuildWW.lhs @@ -8,9 +8,10 @@ module FoldrBuildWW ( mkFoldrBuildWW ) where -import Ubiq{-uitous-} +IMP_Ubiq(){-uitous-} -import CoreSyn ( CoreBinding(..) ) +import CoreSyn ( SYN_IE(CoreBinding) ) +import UniqSupply ( UniqSupply ) import Util ( panic{-ToDo:rm?-} ) --import Type ( cloneTyVarFromTemplate, mkTyVarTy, @@ -18,7 +19,7 @@ import Util ( panic{-ToDo:rm?-} ) --import TysPrim ( alphaTy ) --import TyVar ( alphaTyVar ) -- ---import Type ( Type(..) ) -- **** CAN SEE THE CONSTRUCTORS **** +--import Type ( SYN_IE(Type) ) -- **** CAN SEE THE CONSTRUCTORS **** --import UniqSupply ( runBuiltinUs ) --import WwLib -- share the same monad (is this eticit ?) --import PrelInfo ( listTyCon, mkListTy, nilDataCon, consDataCon, @@ -148,17 +149,15 @@ try_split_bind id expr = worker_ty = mkForallTy (templ ++ [alphaTyVar]) (foldr mkFunTy n_ty_templ (arg_tys++[c_ty_templ,n_ty_templ])) - wrapper_id = id `replaceIdInfo` - (getIdInfo id `addInfo_UF` - iWantToBeINLINEd UnfoldAlways) + wrapper_id = addInlinePragma id worker_id = mkWorkerId worker_new_uq id worker_ty noIdInfo -- TODO : CHECK if mkWorkerId is thr -- right function to use .. -- Now the bodies - c_id = mkSysLocal SLIT("_fbww") c_new_uq c_ty mkUnknownSrcLoc - n_id = mkSysLocal SLIT("_fbww") n_new_uq n_ty mkUnknownSrcLoc + c_id = mkSysLocal SLIT("fbww") c_new_uq c_ty mkUnknownSrcLoc + n_id = mkSysLocal SLIT("fbww") n_new_uq n_ty mkUnknownSrcLoc worker_rhs = mkTyLam [] (big_args ++ [alphaTyVar]) (args++[c_id,n_id]) worker_body