X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2Fmain%2FCmdLineOpts.lhs;h=ed8e99b7d9a7ef9716c38175c449dc12a9b0ae24;hb=16e4ce4c0c02650082f2e11982017c903c549ad5;hp=2589fd04bfebd88e9eee92bca36cb26b59a543b9;hpb=950c1ecaffcb6e8d7cefb20b8372691182c6c304;p=ghc-hetmet.git diff --git a/ghc/compiler/main/CmdLineOpts.lhs b/ghc/compiler/main/CmdLineOpts.lhs index 2589fd0..ed8e99b 100644 --- a/ghc/compiler/main/CmdLineOpts.lhs +++ b/ghc/compiler/main/CmdLineOpts.lhs @@ -77,7 +77,7 @@ module CmdLineOpts ( opt_LiberateCaseThreshold, opt_StgDoLetNoEscapes, opt_UnfoldCasms, - opt_UsageSPOn, + opt_CprOff, opt_UnboxStrictFields, opt_SimplNoPreInlining, opt_SimplDoEtaReduction, @@ -116,15 +116,15 @@ module CmdLineOpts ( #include "HsVersions.h" -import GlaExts -import IOExts ( IORef, readIORef, writeIORef ) import Constants -- Default values for some flags import Util -import FastTypes import FastString ( FastString, mkFastString ) import Config - import Maybes ( firstJust ) + +import GLAEXTS +import DATA_IOREF ( IORef, readIORef, writeIORef ) +import UNSAFE_IO ( unsafePerformIO ) \end{code} %************************************************************************ @@ -185,8 +185,7 @@ data CoreToDo -- These are diff core-to-core passes, | CoreDoWorkerWrapper | CoreDoSpecialising | CoreDoSpecConstr - | CoreDoUSPInf - | CoreDoCPResult + | CoreDoOldStrictness | CoreDoGlomBinds | CoreCSE | CoreDoRuleCheck Int{-CompilerPhase-} String -- Check for non-application of rules @@ -249,7 +248,6 @@ data DynFlag | Opt_D_dump_tc | Opt_D_dump_types | Opt_D_dump_rules - | Opt_D_dump_usagesp | Opt_D_dump_cse | Opt_D_dump_worker_wrapper | Opt_D_dump_rn_trace @@ -257,6 +255,7 @@ data DynFlag | Opt_D_dump_stix | Opt_D_dump_simpl_stats | Opt_D_dump_tc_trace + | Opt_D_dump_splices | Opt_D_dump_BCOs | Opt_D_dump_vect | Opt_D_source_stats @@ -267,8 +266,8 @@ data DynFlag | Opt_D_dump_minimal_imports | Opt_DoCoreLinting | Opt_DoStgLinting - | Opt_DoUSPLinting + | Opt_WarnIsError -- -Werror; makes warnings fatal | Opt_WarnDuplicateExports | Opt_WarnHiShadows | Opt_WarnIncompletePatterns @@ -291,7 +290,10 @@ data DynFlag | Opt_AllowIncoherentInstances | Opt_NoMonomorphismRestriction | Opt_GlasgowExts + | Opt_FFI | Opt_PArr -- syntactic support for parallel arrays + | Opt_With -- deprecated keyword for implicit parms + | Opt_Arrows -- Arrow-notation syntax | Opt_Generics | Opt_NoImplicitPrelude @@ -339,7 +341,8 @@ data HscLang defaultHscLang | cGhcWithNativeCodeGen == "YES" && (prefixMatch "i386" cTARGETPLATFORM || - prefixMatch "sparc" cTARGETPLATFORM) = HscAsm + prefixMatch "sparc" cTARGETPLATFORM || + prefixMatch "powerpc" cTARGETPLATFORM) = HscAsm | otherwise = HscC defaultDynFlags = DynFlags { @@ -363,7 +366,9 @@ defaultDynFlags = DynFlags { opt_I = [], opt_i = [], #endif - flags = standardWarnings, + flags = [Opt_Generics] ++ standardWarnings, + -- Generating the helper-functions for + -- generics is now on by default } {- @@ -540,7 +545,7 @@ unpacked_opts :: [String] unpacked_opts = concat $ map (expandAts) $ - map _UNPK_ argv -- NOT ARGV any more: v_Static_hsc_opts + map unpackFS argv -- NOT ARGV any more: v_Static_hsc_opts where expandAts ('@':fname) = words (unsafePerformIO (readFile fname)) expandAts l = [l] @@ -582,10 +587,11 @@ opt_Flatten = lookUp FSLIT("-fflatten") opt_NoMethodSharing = lookUp FSLIT("-fno-method-sharing") opt_DoSemiTagging = lookUp FSLIT("-fsemi-tagging") opt_FoldrBuildOn = lookUp FSLIT("-ffoldr-build-on") +opt_CprOff = lookUp FSLIT("-fcpr-off") + -- Switch off CPR analysis in the new demand analyser opt_LiberateCaseThreshold = lookup_def_int "-fliberate-case-threshold" (10::Int) opt_StgDoLetNoEscapes = lookUp FSLIT("-flet-no-escape") opt_UnfoldCasms = lookUp FSLIT("-funfold-casms-in-hi-file") -opt_UsageSPOn = lookUp FSLIT("-fusagesp-on") opt_UnboxStrictFields = lookUp FSLIT("-funbox-strict-fields") opt_MaxWorkerArgs = lookup_def_int "-fmax-worker-args" (10::Int) @@ -595,7 +601,7 @@ opt_MaxWorkerArgs = lookup_def_int "-fmax-worker-args" (10::Int) The Prelude, for example is compiled with '-inpackage std' -} opt_InPackage = case lookup_str "-inpackage=" of - Just p -> _PK_ p + Just p -> mkFastString p Nothing -> FSLIT("Main") -- The package name if none is specified opt_EmitCExternDecls = lookUp FSLIT("-femit-extern-decls") @@ -662,7 +668,6 @@ isStaticHscFlag f = "ffoldr-build-on", "flet-no-escape", "funfold-casms-in-hi-file", - "fusagesp-on", "funbox-strict-fields", "femit-extern-decls", "fglobalise-toplev-names", @@ -685,7 +690,8 @@ isStaticHscFlag f = "static", "funregisterised", "fext-core", - "frule-check" + "frule-check", + "fcpr-off" ] || any (flip prefixMatch f) [ "fcontext-stack",