projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Extend IfaceSyn.eqIfTc to cover type kind variants from FC
[ghc-hetmet.git]
/
compiler
/
nativeGen
/
MachCodeGen.hs
diff --git
a/compiler/nativeGen/MachCodeGen.hs
b/compiler/nativeGen/MachCodeGen.hs
index
0d8aa4e
..
1e88867
100644
(file)
--- a/
compiler/nativeGen/MachCodeGen.hs
+++ b/
compiler/nativeGen/MachCodeGen.hs
@@
-2909,6
+2909,10
@@
genCCall fn cconv result_regs args
#if i386_TARGET_ARCH
#if i386_TARGET_ARCH
+genCCall (CmmPrim MO_WriteBarrier) _ _ _ = return nilOL
+ -- write barrier compiles to no code on x86/x86-64;
+ -- we keep it this long in order to prevent earlier optimisations.
+
-- we only cope with a single result for foreign calls
genCCall (CmmPrim op) [(r,_)] args vols = do
case op of
-- we only cope with a single result for foreign calls
genCCall (CmmPrim op) [(r,_)] args vols = do
case op of
@@
-3078,7
+3082,7
@@
outOfLineFloatOp mop res args vols
code2 <- stmtToInstrs (CmmAssign res (CmmReg tmp))
return (code1 `appOL` code2)
where
code2 <- stmtToInstrs (CmmAssign res (CmmReg tmp))
return (code1 `appOL` code2)
where
- lbl = mkForeignLabel fn Nothing True
+ lbl = mkForeignLabel fn Nothing False
fn = case mop of
MO_F32_Sqrt -> FSLIT("sqrtf")
fn = case mop of
MO_F32_Sqrt -> FSLIT("sqrtf")
@@
-3119,6
+3123,10
@@
outOfLineFloatOp mop res args vols
#if x86_64_TARGET_ARCH
#if x86_64_TARGET_ARCH
+genCCall (CmmPrim MO_WriteBarrier) _ _ _ = return nilOL
+ -- write barrier compiles to no code on x86/x86-64;
+ -- we keep it this long in order to prevent earlier optimisations.
+
genCCall (CmmPrim op) [(r,_)] args vols =
outOfLineFloatOp op r args vols
genCCall (CmmPrim op) [(r,_)] args vols =
outOfLineFloatOp op r args vols