X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fcmm%2FZipCfgCmmRep.hs;h=d821b03b140abbb33abb5775075e517a11323855;hb=31796c5c0312aa9a04f3519fa32b0f15b9a14541;hp=43f57a0f35688457b0dd27bcc54f3026205fa3a9;hpb=5d1c70a506f366eca47464f2a354de8cc0d9a795;p=ghc-hetmet.git diff --git a/compiler/cmm/ZipCfgCmmRep.hs b/compiler/cmm/ZipCfgCmmRep.hs index 43f57a0..d821b03 100644 --- a/compiler/cmm/ZipCfgCmmRep.hs +++ b/compiler/cmm/ZipCfgCmmRep.hs @@ -110,19 +110,21 @@ data MidCallTarget -- The target of a MidUnsafeCall deriving Eq data Convention - = NativeCall -- Native C-- call + = NativeDirectCall -- Native C-- call skipping the node (closure) argument + + | NativeNodeCall -- Native C-- call including the node argument - | NativeReturn -- Native C-- return + | NativeReturn -- Native C-- return - | Slow -- Slow entry points: all args pushed on the stack + | Slow -- Slow entry points: all args pushed on the stack - | GC -- Entry to the garbage collector: uses the node reg! + | GC -- Entry to the garbage collector: uses the node reg! - | PrimOpCall -- Calling prim ops + | PrimOpCall -- Calling prim ops - | PrimOpReturn -- Returning from prim ops + | PrimOpReturn -- Returning from prim ops - | Foreign -- Foreign call/return + | Foreign -- Foreign call/return ForeignConvention | Private @@ -520,14 +522,15 @@ genFullCondBranch expr t f = ] pprConvention :: Convention -> SDoc -pprConvention (NativeCall {}) = text "" -pprConvention (NativeReturn {}) = text "" -pprConvention Slow = text "" -pprConvention GC = text "" -pprConvention PrimOpCall = text "" -pprConvention PrimOpReturn = text "" -pprConvention (Foreign c) = ppr c -pprConvention (Private {}) = text "" +pprConvention (NativeNodeCall {}) = text "" +pprConvention (NativeDirectCall {}) = text "" +pprConvention (NativeReturn {}) = text "" +pprConvention Slow = text "" +pprConvention GC = text "" +pprConvention PrimOpCall = text "" +pprConvention PrimOpReturn = text "" +pprConvention (Foreign c) = ppr c +pprConvention (Private {}) = text "" pprForeignConvention :: ForeignConvention -> SDoc pprForeignConvention (ForeignConvention c as rs) = ppr c <> ppr as <> ppr rs