X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FllvmGen%2FLlvmCodeGen%2FPpr.hs;h=2a96efbf8eab962998aea512396d5f61bb99c66d;hb=fb218a784685dc0452f3e584d238c8db7826d499;hp=b31e6ff450af5b02900aaa09d47fe1a66da47c6b;hpb=ab1845f0b37904b0517b07fa822ad07e6628018c;p=ghc-hetmet.git diff --git a/compiler/llvmGen/LlvmCodeGen/Ppr.hs b/compiler/llvmGen/LlvmCodeGen/Ppr.hs index b31e6ff..2a96efb 100644 --- a/compiler/llvmGen/LlvmCodeGen/Ppr.hs +++ b/compiler/llvmGen/LlvmCodeGen/Ppr.hs @@ -30,7 +30,7 @@ moduleLayout = #if i386_TARGET_ARCH #if darwin_TARGET_OS - text "target datalayout = \"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128\"" + text "target datalayout = \"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128-n8:16:32\"" $+$ text "target triple = \"i386-apple-darwin9.8\"" #elif mingw32_TARGET_OS text "target datalayout = \"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f80:128:128-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32\"" @@ -40,19 +40,21 @@ moduleLayout = $+$ text "target triple = \"i386-pc-linux-gnu\"" #endif -#else +#elif x86_64_TARGET_ARCH -#ifdef x86_64_TARGET_ARCH - text "target datalayout = \"e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128\"" +#if darwin_TARGET_OS + text "target datalayout = \"e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64\"" + $+$ text "target triple = \"x86_64-apple-darwin10.0.0\"" +#else /* Linux */ + text "target datalayout = \"e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64\"" $+$ text "target triple = \"x86_64-linux-gnu\"" +#endif -#else /* Not i386 */ +#else /* Not x86 */ -- FIX: Other targets empty #endif -#endif - -- | Header code for LLVM modules pprLlvmHeader :: Doc @@ -88,10 +90,9 @@ pprLlvmCmmTop env count (CmmProc info lbl _ (ListGraph blks)) link = if externallyVisibleCLabel lbl' then ExternallyVisible else Internal - funDec = llvmFunSig lbl' link lmblocks = map (\(BasicBlock id stmts) -> LlvmBlock (getUnique id) stmts) blks - fun = LlvmFunction funDec [NoUnwind] sec' lmblocks + fun = mkLlvmFunc lbl' link sec' lmblocks in ppLlvmFunction fun ), ivar)