projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e43eaee
)
Darwin/x86: Print 64-bit literals in a way Apple understands.
author
wolfgang.thaller@gmx.net
<unknown>
Sun, 5 Feb 2006 16:24:53 +0000
(16:24 +0000)
committer
wolfgang.thaller@gmx.net
<unknown>
Sun, 5 Feb 2006 16:24:53 +0000
(16:24 +0000)
ghc/compiler/nativeGen/PprMach.hs
patch
|
blob
|
history
diff --git
a/ghc/compiler/nativeGen/PprMach.hs
b/ghc/compiler/nativeGen/PprMach.hs
index
4392ae7
..
afa5bcd
100644
(file)
--- a/
ghc/compiler/nativeGen/PprMach.hs
+++ b/
ghc/compiler/nativeGen/PprMach.hs
@@
-50,7
+50,7
@@
import MONAD_ST
import Char ( chr, ord )
import Maybe ( isJust )
import Char ( chr, ord )
import Maybe ( isJust )
-#if powerpc_TARGET_ARCH
+#if powerpc_TARGET_ARCH || darwin_TARGET_OS
import DATA_WORD(Word32)
import DATA_BITS
#endif
import DATA_WORD(Word32)
import DATA_BITS
#endif
@@
-744,6
+744,14
@@
pprDataItem lit
#if i386_TARGET_ARCH || x86_64_TARGET_ARCH
ppr_item I16 x = [ptext SLIT("\t.word\t") <> pprImm imm]
#endif
#if i386_TARGET_ARCH || x86_64_TARGET_ARCH
ppr_item I16 x = [ptext SLIT("\t.word\t") <> pprImm imm]
#endif
+#if i386_TARGET_ARCH && darwin_TARGET_OS
+ ppr_item I64 (CmmInt x _) =
+ [ptext SLIT("\t.long\t")
+ <> int (fromIntegral (fromIntegral x :: Word32)),
+ ptext SLIT("\t.long\t")
+ <> int (fromIntegral
+ (fromIntegral (x `shiftR` 32) :: Word32))]
+#endif
#if i386_TARGET_ARCH
ppr_item I64 x = [ptext SLIT("\t.quad\t") <> pprImm imm]
#endif
#if i386_TARGET_ARCH
ppr_item I64 x = [ptext SLIT("\t.quad\t") <> pprImm imm]
#endif