diff options
| author | Ian Lynagh <ian@well-typed.com> | 2012-10-09 18:22:57 +0100 |
|---|---|---|
| committer | Ian Lynagh <ian@well-typed.com> | 2012-10-09 18:30:10 +0100 |
| commit | 30e7b73af1bc9ac7c34b020f84d11c50fadfcb2f (patch) | |
| tree | bcab10214c649ca5991621cd5bac4dad2d793129 /compiler | |
| parent | 1255ff1cda34acef22c5df80389e4142970d0ee8 (diff) | |
| download | haskell-30e7b73af1bc9ac7c34b020f84d11c50fadfcb2f.tar.gz | |
Make -fsimple-list-literals a dynamic flag
Diffstat (limited to 'compiler')
| -rw-r--r-- | compiler/deSugar/DsExpr.lhs | 5 | ||||
| -rw-r--r-- | compiler/main/DynFlags.hs | 2 | ||||
| -rw-r--r-- | compiler/main/StaticFlagParser.hs | 1 | ||||
| -rw-r--r-- | compiler/main/StaticFlags.hs | 4 |
4 files changed, 4 insertions, 8 deletions
diff --git a/compiler/deSugar/DsExpr.lhs b/compiler/deSugar/DsExpr.lhs index 88df581844..c4ee50f54d 100644 --- a/compiler/deSugar/DsExpr.lhs +++ b/compiler/deSugar/DsExpr.lhs @@ -40,7 +40,6 @@ import CoreFVs import MkCore import DynFlags -import StaticFlags import CostCentre import Id import VarSet @@ -688,8 +687,8 @@ dsExplicitList elt_ty xs = do { dflags <- getDynFlags ; xs' <- mapM dsLExpr xs ; let (dynamic_prefix, static_suffix) = spanTail is_static xs' - ; if opt_SimpleListLiterals -- -fsimple-list-literals - || not (dopt Opt_EnableRewriteRules dflags) -- Rewrite rules off + ; if dopt Opt_SimpleListLiterals dflags -- -fsimple-list-literals + || not (dopt Opt_EnableRewriteRules dflags) -- Rewrite rules off -- Don't generate a build if there are no rules to eliminate it! -- See Note [Desugaring RULE left hand sides] in Desugar || null dynamic_prefix -- Avoid build (\c n. foldr c n xs)! diff --git a/compiler/main/DynFlags.hs b/compiler/main/DynFlags.hs index 881d263e90..b23bab1c41 100644 --- a/compiler/main/DynFlags.hs +++ b/compiler/main/DynFlags.hs @@ -291,6 +291,7 @@ data DynFlag | Opt_CmmSink | Opt_CmmElimCommonBlocks | Opt_OmitYields + | Opt_SimpleListLiterals -- Interface files | Opt_IgnoreInterfacePragmas @@ -2316,6 +2317,7 @@ fFlags = [ ( "cmm-sink", Opt_CmmSink, nop ), ( "cmm-elim-common-blocks", Opt_CmmElimCommonBlocks, nop ), ( "omit-yields", Opt_OmitYields, nop ), + ( "simple-list-literals", Opt_SimpleListLiterals, nop ), ( "gen-manifest", Opt_GenManifest, nop ), ( "embed-manifest", Opt_EmbedManifest, nop ), ( "ext-core", Opt_EmitExternalCore, nop ), diff --git a/compiler/main/StaticFlagParser.hs b/compiler/main/StaticFlagParser.hs index 465f0d619e..45d37c7d0d 100644 --- a/compiler/main/StaticFlagParser.hs +++ b/compiler/main/StaticFlagParser.hs @@ -119,7 +119,6 @@ isStaticFlag f = "fno-hi-version-check", "dno-black-holing", "fno-state-hack", - "fsimple-list-literals", "fruntime-types", "fno-pre-inlining", "fno-opt-coercion", diff --git a/compiler/main/StaticFlags.hs b/compiler/main/StaticFlags.hs index 913241e692..6330b2e872 100644 --- a/compiler/main/StaticFlags.hs +++ b/compiler/main/StaticFlags.hs @@ -34,7 +34,6 @@ module StaticFlags ( -- optimisation opts opt_NoStateHack, - opt_SimpleListLiterals, opt_CprOff, opt_SimplNoPreInlining, opt_SimplExcessPrecision, @@ -172,9 +171,6 @@ opt_NoDebugOutput = lookUp (fsLit "-dno-debug-output") opt_DictsStrict :: Bool opt_DictsStrict = lookUp (fsLit "-fdicts-strict") -opt_SimpleListLiterals :: Bool -opt_SimpleListLiterals = lookUp (fsLit "-fsimple-list-literals") - opt_NoStateHack :: Bool opt_NoStateHack = lookUp (fsLit "-fno-state-hack") |
