Remove some CPP
authorIan Lynagh <ian@well-typed.com>
Mon, 17 Sep 2012 19:21:06 +0000 (20:21 +0100)
committerIan Lynagh <ian@well-typed.com>
Mon, 17 Sep 2012 20:20:25 +0000 (21:20 +0100)
compiler/cmm/CmmType.hs
compiler/codeGen/CgProf.hs
compiler/codeGen/CgTicky.hs
compiler/codeGen/StgCmmProf.hs
compiler/codeGen/StgCmmTicky.hs

index c0ce9e3..b6deb01 100644 (file)
@@ -104,9 +104,9 @@ bHalfWord dflags = cmmBits (halfWordWidth dflags)
 gcWord :: DynFlags -> CmmType
 gcWord dflags = CmmType GcPtrCat (wordWidth dflags)
 
-cInt, cLong :: CmmType
-cInt  = cmmBits cIntWidth
-cLong = cmmBits cLongWidth
+cInt, cLong :: DynFlags -> CmmType
+cInt  dflags = cmmBits (cIntWidth  dflags)
+cLong dflags = cmmBits (cLongWidth dflags)
 
 
 ------------ Predicates ----------------
@@ -178,18 +178,15 @@ halfWordMask dflags
  | otherwise             = panic "MachOp.halfWordMask: Unknown word size"
 
 -- cIntRep is the Width for a C-language 'int'
-cIntWidth, cLongWidth :: Width
-#if SIZEOF_INT == 4
-cIntWidth = W32
-#elif  SIZEOF_INT == 8
-cIntWidth = W64
-#endif
-
-#if SIZEOF_LONG == 4
-cLongWidth = W32
-#elif  SIZEOF_LONG == 8
-cLongWidth = W64
-#endif
+cIntWidth, cLongWidth :: DynFlags -> Width
+cIntWidth dflags = case cINT_SIZE dflags of
+                   4 -> W32
+                   8 -> W64
+                   s -> panic ("cIntWidth: Unknown cINT_SIZE: " ++ show s)
+cLongWidth dflags = case cLONG_SIZE dflags of
+                    4 -> W32
+                    8 -> W64
+                    s -> panic ("cIntWidth: Unknown cLONG_SIZE: " ++ show s)
 
 widthInBits :: Width -> Int
 widthInBits W8   = 8
index 6d87ee7..1c78dd8 100644 (file)
@@ -307,8 +307,8 @@ ldvEnter cl_ptr = do
            (stmtC (CmmStore ldv_wd new_ldv_wd))
 
 loadEra :: DynFlags -> CmmExpr
-loadEra dflags = CmmMachOp (MO_UU_Conv cIntWidth (wordWidth dflags))
-                           [CmmLoad (mkLblExpr (mkCmmDataLabel rtsPackageId $ fsLit("era"))) cInt]
+loadEra dflags = CmmMachOp (MO_UU_Conv (cIntWidth dflags) (wordWidth dflags))
+                           [CmmLoad (mkLblExpr (mkCmmDataLabel rtsPackageId $ fsLit("era"))) (cInt dflags)]
 
 ldvWord :: DynFlags -> CmmExpr -> CmmExpr
 -- Takes the address of a closure, and returns
index 9e98175..79215f6 100644 (file)
@@ -302,9 +302,9 @@ tickyAllocHeap hp
                        (CmmLit (cmmLabelOffB ticky_ctr 
                                (oFFSET_StgEntCounter_allocs dflags))) hp,
                -- Bump ALLOC_HEAP_ctr
-           addToMemLbl cLongWidth (mkCmmDataLabel rtsPackageId $ fsLit "ALLOC_HEAP_ctr") 1,
+           addToMemLbl (cLongWidth dflags) (mkCmmDataLabel rtsPackageId $ fsLit "ALLOC_HEAP_ctr") 1,
                -- Bump ALLOC_HEAP_tot
-           addToMemLbl cLongWidth (mkCmmDataLabel rtsPackageId $ fsLit "ALLOC_HEAP_tot") hp] }
+           addToMemLbl (cLongWidth dflags) (mkCmmDataLabel rtsPackageId $ fsLit "ALLOC_HEAP_tot") hp] }
 
 -- -----------------------------------------------------------------------------
 -- Ticky utils
@@ -323,7 +323,8 @@ bumpTickyCounter lbl = bumpTickyCounter' (cmmLabelOffB (mkCmmDataLabel rtsPackag
 
 bumpTickyCounter' :: CmmLit -> Code
 -- krc: note that we're incrementing the _entry_count_ field of the ticky counter
-bumpTickyCounter' lhs = stmtC (addToMemLong (CmmLit lhs) 1)
+bumpTickyCounter' lhs = do dflags <- getDynFlags
+                           stmtC (addToMemLong dflags (CmmLit lhs) 1)
 
 bumpHistogram :: FastString -> Int -> Code
 bumpHistogram _lbl _n
@@ -346,8 +347,8 @@ bumpHistogramE lbl n
 -}
 
 ------------------------------------------------------------------
-addToMemLong :: CmmExpr -> Int -> CmmStmt
-addToMemLong = addToMem cLongWidth
+addToMemLong :: DynFlags -> CmmExpr -> Int -> CmmStmt
+addToMemLong dflags = addToMem (cLongWidth dflags)
 
 ------------------------------------------------------------------
 -- Showing the "type category" for ticky-ticky profiling
index e6e9899..d2f4984 100644 (file)
@@ -369,8 +369,9 @@ ldvEnter cl_ptr = do
                      mkNop
 
 loadEra :: DynFlags -> CmmExpr
-loadEra dflags = CmmMachOp (MO_UU_Conv cIntWidth (wordWidth dflags))
-         [CmmLoad (mkLblExpr (mkCmmDataLabel rtsPackageId (fsLit "era"))) cInt]
+loadEra dflags = CmmMachOp (MO_UU_Conv (cIntWidth dflags) (wordWidth dflags))
+    [CmmLoad (mkLblExpr (mkCmmDataLabel rtsPackageId (fsLit "era")))
+             (cInt dflags)]
 
 ldvWord :: DynFlags -> CmmExpr -> CmmExpr
 -- Takes the address of a closure, and returns 
index 137764d..d7517e8 100644 (file)
@@ -325,9 +325,9 @@ tickyAllocHeap hp
                        (CmmLit (cmmLabelOffB ticky_ctr 
                                (oFFSET_StgEntCounter_allocs dflags))) hp,
                -- Bump ALLOC_HEAP_ctr
-           addToMemLbl cLong (mkCmmDataLabel rtsPackageId (fsLit "ALLOC_HEAP_ctr")) 1,
+           addToMemLbl (cLong dflags) (mkCmmDataLabel rtsPackageId (fsLit "ALLOC_HEAP_ctr")) 1,
                -- Bump ALLOC_HEAP_tot
-           addToMemLbl cLong (mkCmmDataLabel rtsPackageId (fsLit "ALLOC_HEAP_tot")) hp] }
+           addToMemLbl (cLong dflags) (mkCmmDataLabel rtsPackageId (fsLit "ALLOC_HEAP_tot")) hp] }
 
 -- -----------------------------------------------------------------------------
 -- Ticky utils
@@ -343,7 +343,8 @@ bumpTickyCounter lbl = bumpTickyCounter' (cmmLabelOffB (mkCmmDataLabel rtsPackag
 
 bumpTickyCounter' :: CmmLit -> FCode ()
 -- krc: note that we're incrementing the _entry_count_ field of the ticky counter
-bumpTickyCounter' lhs = emit (addToMem cLong (CmmLit lhs) 1)
+bumpTickyCounter' lhs = do dflags <- getDynFlags
+                           emit (addToMem (cLong dflags) (CmmLit lhs) 1)
 
 bumpHistogram :: FastString -> Int -> FCode ()
 bumpHistogram _lbl _n