opt_NoDebugOutput,
-- profiling opts
- opt_AutoSccsOnAllToplevs,
- opt_AutoSccsOnExportedToplevs,
- opt_AutoSccsOnIndividualCafs,
opt_SccProfilingOn,
- opt_DoTickyProfiling,
-- Hpc opts
opt_Hpc,
-- optimisation opts
opt_DsMultiTyVar,
opt_NoStateHack,
+ opt_SimpleListLiterals,
opt_SpecInlineJoinPoints,
opt_CprOff,
opt_SimplNoPreInlining,
opt_EmitExternalCore,
v_Ld_inputs,
tablesNextToCode,
+ opt_StubDeadValues,
-- For the parser
addOpt, removeOpt, addWay, findBuildTag, v_opt_C_ready
-- profiling opts
-opt_AutoSccsOnAllToplevs :: Bool
-opt_AutoSccsOnAllToplevs = lookUp (fsLit "-fauto-sccs-on-all-toplevs")
-opt_AutoSccsOnExportedToplevs :: Bool
-opt_AutoSccsOnExportedToplevs = lookUp (fsLit "-fauto-sccs-on-exported-toplevs")
-opt_AutoSccsOnIndividualCafs :: Bool
-opt_AutoSccsOnIndividualCafs = lookUp (fsLit "-fauto-sccs-on-individual-cafs")
opt_SccProfilingOn :: Bool
opt_SccProfilingOn = lookUp (fsLit "-fscc-profiling")
-opt_DoTickyProfiling :: Bool
-opt_DoTickyProfiling = WayTicky `elem` (unsafePerformIO $ readIORef v_Ways)
-- Hpc opts
opt_Hpc :: Bool
opt_SpecInlineJoinPoints :: Bool
opt_SpecInlineJoinPoints = lookUp (fsLit "-fspec-inline-join-points")
+opt_SimpleListLiterals :: Bool
+opt_SimpleListLiterals = lookUp (fsLit "-fsimple-list-literals")
+
opt_NoStateHack :: Bool
opt_NoStateHack = lookUp (fsLit "-fno-state-hack")
+
opt_CprOff :: Bool
opt_CprOff = lookUp (fsLit "-fcpr-off")
-- Switch off CPR analysis in the new demand analyser
opt_HistorySize = lookup_def_int "-fhistory-size" 20
opt_OmitBlackHoling :: Bool
opt_OmitBlackHoling = lookUp (fsLit "-dno-black-holing")
+opt_StubDeadValues :: Bool
+opt_StubDeadValues = lookUp (fsLit "-dstub-dead-values")
-- Simplifier switches
opt_SimplNoPreInlining :: Bool
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" (8::Int) -- Discounts can be big
+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
opt_UF_KeenessFactor :: Float
= WayThreaded
| WayDebug
| WayProf
+ | WayEventLog
| WayTicky
| WayPar
| WayGran
WayProf `allowedWith` WayNDP = True
WayThreaded `allowedWith` WayProf = True
+ WayThreaded `allowedWith` WayEventLog = True
_ `allowedWith` _ = False
, "-DPROFILING"
, "-optc-DPROFILING" ]),
+ (WayEventLog, Way "l" True "RTS Event Logging"
+ [ "-DEVENTLOG"
+ , "-optc-DEVENTLOG" ]),
+
(WayTicky, Way "t" True "Ticky-ticky Profiling"
[ "-DTICKY_TICKY"
, "-optc-DTICKY_TICKY" ]),