projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ 2005-09-24 04:22:22 by wolfgang]
[ghc-hetmet.git]
/
ghc
/
compiler
/
nativeGen
/
MachCodeGen.hs
diff --git
a/ghc/compiler/nativeGen/MachCodeGen.hs
b/ghc/compiler/nativeGen/MachCodeGen.hs
index
8560d4a
..
50d886c
100644
(file)
--- a/
ghc/compiler/nativeGen/MachCodeGen.hs
+++ b/
ghc/compiler/nativeGen/MachCodeGen.hs
@@
-735,12
+735,14
@@
getRegister leaf
getRegister (CmmLit (CmmFloat f F32)) = do
lbl <- getNewLabelNat
getRegister (CmmLit (CmmFloat f F32)) = do
lbl <- getNewLabelNat
- let code dst = toOL [
+ dynRef <- cmmMakeDynamicReference addImportNat False lbl
+ Amode addr addr_code <- getAmode dynRef
+ let code dst =
LDATA ReadOnlyData
[CmmDataLabel lbl,
LDATA ReadOnlyData
[CmmDataLabel lbl,
- CmmStaticLit (CmmFloat f F32)],
- GLD F32 (ImmAddr (ImmCLbl lbl) 0) dst
- ]
+ CmmStaticLit (CmmFloat f F32)]
+ `consOL` (addr_code `snocOL`
+ GLD F32 addr dst)
-- in
return (Any F32 code)
-- in
return (Any F32 code)
@@
-756,12
+758,14
@@
getRegister (CmmLit (CmmFloat d F64))
| otherwise = do
lbl <- getNewLabelNat
| otherwise = do
lbl <- getNewLabelNat
- let code dst = toOL [
+ dynRef <- cmmMakeDynamicReference addImportNat False lbl
+ Amode addr addr_code <- getAmode dynRef
+ let code dst =
LDATA ReadOnlyData
[CmmDataLabel lbl,
LDATA ReadOnlyData
[CmmDataLabel lbl,
- CmmStaticLit (CmmFloat d F64)],
- GLD F64 (ImmAddr (ImmCLbl lbl) 0) dst
- ]
+ CmmStaticLit (CmmFloat d F64)]
+ `consOL` (addr_code `snocOL`
+ GLD F64 addr dst)
-- in
return (Any F64 code)
-- in
return (Any F64 code)