[project @ 2005-11-08 12:31:36 by simonmar]
authorsimonmar <unknown>
Tue, 8 Nov 2005 12:31:36 +0000 (12:31 +0000)
committersimonmar <unknown>
Tue, 8 Nov 2005 12:31:36 +0000 (12:31 +0000)
unless I'm mistaken, only x86 needs -ffloat-store.  x86_64 certainly
doesn't need it, because it uses SSE2 with the correct-sized floating
point registers and doesn't store temporary results with more
precision than results in memory.

ghc/compiler/main/DriverPipeline.hs

index bdc0546..07fe113 100644 (file)
@@ -872,7 +872,9 @@ runPhase cc_phase stop dflags basename suff input_fn get_output_fn maybe_loc
                       ++ [ "-D__GLASGOW_HASKELL__="++cProjectVersionInt ]
                       ++ cc_opts
                       ++ split_opt
+#if x86_TARGET_ARCH
                       ++ (if excessPrecision then [] else [ "-ffloat-store" ])
+#endif
                       ++ include_paths
                       ++ pkg_extra_cc_opts
                       ))