Columns now start at 1, as lines already did
[ghc-hetmet.git] / compiler / main / StaticFlags.hs
index 3bcf28c..9553081 100644 (file)
@@ -51,6 +51,7 @@ module StaticFlags (
        opt_UF_CreationThreshold,
        opt_UF_UseThreshold,
        opt_UF_FunAppDiscount,
+       opt_UF_DictDiscount,
        opt_UF_KeenessFactor,
        opt_UF_DearOp,
 
@@ -72,6 +73,7 @@ module StaticFlags (
        v_Ld_inputs,
        tablesNextToCode,
         opt_StubDeadValues,
+        opt_Ticky,
 
     -- For the parser
     addOpt, removeOpt, addWay, getWayFlags, v_opt_C_ready
@@ -251,17 +253,18 @@ opt_SimplExcessPrecision :: Bool
 opt_SimplExcessPrecision       = lookUp  (fsLit "-fexcess-precision")
 
 -- Unfolding control
-opt_UF_CreationThreshold :: Int
-opt_UF_CreationThreshold       = lookup_def_int "-funfolding-creation-threshold"  (45::Int)
-opt_UF_UseThreshold :: Int
-opt_UF_UseThreshold            = lookup_def_int "-funfolding-use-threshold"       (6::Int)     -- Discounts can be big
-opt_UF_FunAppDiscount :: Int
-opt_UF_FunAppDiscount          = lookup_def_int "-funfolding-fun-discount"        (6::Int)     -- It's great to inline a fn
+-- See Note [Discounts and thresholds] in CoreUnfold
+
+opt_UF_CreationThreshold, opt_UF_UseThreshold :: Int
+opt_UF_DearOp, opt_UF_FunAppDiscount, opt_UF_DictDiscount :: Int
 opt_UF_KeenessFactor :: Float
-opt_UF_KeenessFactor           = lookup_def_float "-funfolding-keeness-factor"    (1.5::Float)
 
-opt_UF_DearOp :: Int
-opt_UF_DearOp   = ( 4 :: Int)
+opt_UF_CreationThreshold = lookup_def_int "-funfolding-creation-threshold" (45::Int)
+opt_UF_UseThreshold     = lookup_def_int "-funfolding-use-threshold"      (6::Int)
+opt_UF_FunAppDiscount   = lookup_def_int "-funfolding-fun-discount"       (6::Int)
+opt_UF_DictDiscount     = lookup_def_int "-funfolding-dict-discount"      (1::Int)
+opt_UF_KeenessFactor    = lookup_def_float "-funfolding-keeness-factor"   (1.5::Float)
+opt_UF_DearOp            = ( 4 :: Int)
 
 
 -- Related to linking
@@ -288,6 +291,8 @@ tablesNextToCode            = not opt_Unregisterised
 opt_ErrorSpans :: Bool
 opt_ErrorSpans                 = lookUp (fsLit "-ferror-spans")
 
+opt_Ticky :: Bool
+opt_Ticky                       = lookUp (fsLit "-ticky")
 
 -- object files and libraries to be linked in are collected here.
 -- ToDo: perhaps this could be done without a global, it wasn't obvious
@@ -304,7 +309,7 @@ GLOBAL_VAR(v_Ld_inputs,     [],      [String])
 -- non-profiling objects.
 
 -- After parsing the command-line options, we determine which "way" we
--- are building - this might be a combination way, eg. profiling+ticky-ticky.
+-- are building - this might be a combination way, eg. profiling+threaded.
 
 -- We then find the "build-tag" associated with this way, and this
 -- becomes the suffix used to find .hi files and libraries used in
@@ -315,7 +320,6 @@ data WayName
   | WayDebug
   | WayProf
   | WayEventLog
-  | WayTicky
   | WayPar
   | WayGran
   | WayNDP
@@ -336,11 +340,6 @@ allowed_combination way = and [ x `allowedWith` y
        _ `allowedWith` WayDyn                  = True
        WayDyn `allowedWith` _                  = True
 
-       -- ticky is (now) allowed with everything
-       -- Indeed, ticky should no longer be a 'way' at all
-       _ `allowedWith` WayTicky                = True
-       WayTicky `allowedWith` _                = True
-
        -- debug is allowed with everything
        _ `allowedWith` WayDebug                = True
        WayDebug `allowedWith` _                = True
@@ -417,10 +416,6 @@ way_details =
        [ "-DTRACING"
        , "-optc-DTRACING" ],
 
-    Way WayTicky "t" True "Ticky-ticky Profiling"  
-       [ "-DTICKY_TICKY"
-       , "-optc-DTICKY_TICKY" ],
-
     Way WayPar "mp" False "Parallel" 
        [ "-fparallel"
        , "-D__PARALLEL_HASKELL__"