prof/smp combination probably doesn't work, disable it
[ghc-hetmet.git] / ghc / compiler / main / StaticFlags.hs
index e500cc7..4e2e44e 100644 (file)
@@ -32,7 +32,6 @@ module StaticFlags (
         opt_MaxContextReductionDepth,
        opt_IrrefutableTuples,
        opt_Parallel,
-       opt_SMP,
        opt_RuntimeTypes,
        opt_Flatten,
 
@@ -71,7 +70,6 @@ module StaticFlags (
 
 #include "HsVersions.h"
 
-import DriverPhases
 import Util            ( consIORef )
 import CmdLineParser
 import Config          ( cProjectVersionInt, cProjectPatchLevel,
@@ -257,7 +255,6 @@ opt_DictsStrict                     = lookUp  FSLIT("-fdicts-strict")
 opt_IrrefutableTuples          = lookUp  FSLIT("-firrefutable-tuples")
 opt_MaxContextReductionDepth   = lookup_def_int "-fcontext-stack" mAX_CONTEXT_REDUCTION_DEPTH
 opt_Parallel                   = lookUp  FSLIT("-fparallel")
-opt_SMP                                = lookUp  FSLIT("-fsmp")
 opt_Flatten                    = lookUp  FSLIT("-fflatten")
 
 -- optimisation opts
@@ -316,7 +313,6 @@ isStaticFlag f =
        "fdicts-strict",
        "firrefutable-tuples",
        "fparallel",
-       "fsmp",
        "fflatten",
        "fsemi-tagging",
        "flet-no-escape",
@@ -456,7 +452,6 @@ allowed_combination way = and [ x `allowedWith` y
 
        WayThreaded `allowedWith` WayProf       = True
        WayProf `allowedWith` WayUnreg          = True
-       WayProf `allowedWith` WaySMP            = True
        WayProf `allowedWith` WayNDP            = True
        _ `allowedWith` _                       = False
 
@@ -508,14 +503,12 @@ way_details =
     (WayProf, Way  "p" False "Profiling"
        [ "-fscc-profiling"
        , "-DPROFILING"
-       , "-optc-DPROFILING"
-       , "-fvia-C" ]),
+       , "-optc-DPROFILING" ]),
 
     (WayTicky, Way  "t" False "Ticky-ticky Profiling"  
        [ "-fticky-ticky"
        , "-DTICKY_TICKY"
-       , "-optc-DTICKY_TICKY"
-       , "-fvia-C" ]),
+       , "-optc-DTICKY_TICKY" ]),
 
     (WayUnreg, Way  "u" False "Unregisterised" 
        unregFlags ),
@@ -529,8 +522,7 @@ way_details =
         , "-optc-w"
         , "-optl-L${PVM_ROOT}/lib/${PVM_ARCH}"
         , "-optl-lpvm3"
-        , "-optl-lgpvm3"
-       , "-fvia-C" ]),
+        , "-optl-lgpvm3" ]),
 
     -- at the moment we only change the RTS and could share compiler and libs!
     (WayPar, Way  "mt" False "Parallel ticky profiling" 
@@ -542,8 +534,7 @@ way_details =
         , "-optc-w"
         , "-optl-L${PVM_ROOT}/lib/${PVM_ARCH}"
         , "-optl-lpvm3"
-        , "-optl-lgpvm3"
-       , "-fvia-C" ]),
+        , "-optl-lgpvm3" ]),
 
     (WayPar, Way  "md" False "Distributed" 
        [ "-fparallel"
@@ -555,26 +546,23 @@ way_details =
         , "-optc-w"
         , "-optl-L${PVM_ROOT}/lib/${PVM_ARCH}"
         , "-optl-lpvm3"
-        , "-optl-lgpvm3"
-       , "-fvia-C" ]),
+        , "-optl-lgpvm3" ]),
 
     (WayGran, Way  "mg" False "GranSim"
        [ "-fgransim"
        , "-D__GRANSIM__"
        , "-optc-DGRAN"
-       , "-package concurrent"
-       , "-fvia-C" ]),
+       , "-package concurrent" ]),
 
-    (WaySMP, Way  "s" False "SMP"
-       [ "-fsmp"
+    (WaySMP, Way  "s" True "SMP"
+       [ 
 #if !defined(mingw32_TARGET_OS)
-       , "-optc-pthread"
+         "-optc-pthread"
 #endif
 #if !defined(mingw32_TARGET_OS) && !defined(freebsd_TARGET_OS)
        , "-optl-pthread"
 #endif
-       , "-optc-DSMP"
-       , "-fvia-C" ]),
+       ]),
 
     (WayNDP, Way  "ndp" False "Nested data parallelism"
        [ "-fparr"