Fix Trace #1494
[ghc-hetmet.git] / compiler / nativeGen / PositionIndependentCode.hs
index 80023e1..4001078 100644 (file)
@@ -131,7 +131,7 @@ cmmMakePicReference :: CLabel -> CmmExpr
         -- everything gets relocated at runtime
 
 cmmMakePicReference lbl
-    | opt_PIC && absoluteLabel lbl = CmmMachOp (MO_Add wordRep) [
+    | (opt_PIC || not opt_Static) && absoluteLabel lbl = CmmMachOp (MO_Add wordRep) [
             CmmReg (CmmGlobal PicBaseReg),
             CmmLit $ picRelative lbl
         ]
@@ -200,7 +200,7 @@ howToAccessLabel DataReference lbl
     | otherwise = AccessDirectly
 
 
-#if x86_TARGET_ARCH || x86_64_TARGET_ARCH
+#if i386_TARGET_ARCH || x86_64_TARGET_ARCH
     -- dyld code stubs don't work for tailcalls because the
     -- stack alignment is only right for regular calls.
     -- Therefore, we have to go via a symbol pointer: