Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/111edd855e8d875d838e26b57a8bc89ecccbd7db

>---------------------------------------------------------------

commit 111edd855e8d875d838e26b57a8bc89ecccbd7db
Author: Simon Marlow <[email protected]>
Date:   Fri Aug 31 10:46:08 2012 +0100

    Add -fcmm-sink to avoid the register allocator failing on x86

>---------------------------------------------------------------

 compiler/parser/Parser.y.pp |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/compiler/parser/Parser.y.pp b/compiler/parser/Parser.y.pp
index 410f95b..ac6a737 100644
--- a/compiler/parser/Parser.y.pp
+++ b/compiler/parser/Parser.y.pp
@@ -24,6 +24,16 @@ to inline certain key external functions, so we instruct GHC 
not to
 throw away inlinings as it would normally do in -O0 mode.
 -}
 
+-- CPP tricks because we want the directives in the output of the
+-- first CPP pass.
+#define __IF_GHC_77__ #if __GLASGOW_HASKELL__ >= 707
+#define __ENDIF__     #endif
+__IF_GHC_77__
+-- Required on x86 to avoid the register allocator running out of
+-- stack slots when compiling this module with -fPIC -dynamic.
+{-# OPTIONS_GHC -fcmm-sink #-}
+__ENDIF__
+
 module Parser ( parseModule, parseStmt, parseIdentifier, parseType,
                 parseHeader ) where
 



_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to