Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Glasgow Haskell Compiler
GHC
Commits
bb827864
Commit
bb827864
authored
Oct 04, 2010
by
dterei
Browse files
LLVM: Fix compilation of writebarrier,
#4308
parent
7594ea18
Changes
1
Hide whitespace changes
Inline
Side-by-side
compiler/llvmGen/LlvmCodeGen/CodeGen.hs
View file @
bb827864
...
...
@@ -152,6 +152,10 @@ genCall :: LlvmEnv -> CmmCallTarget -> HintedCmmFormals -> HintedCmmActuals
-- Write barrier needs to be handled specially as it is implemented as an LLVM
-- intrinsic function.
#
if
i386_TARGET_ARCH
||
x86_64_TARGET_ARCH
||
sparc_TARGET_ARCH
genCall
env
(
CmmPrim
MO_WriteBarrier
)
_
_
_
=
return
(
env
,
nilOL
,
[]
)
#
else
genCall
env
(
CmmPrim
MO_WriteBarrier
)
_
_
_
=
do
let
fname
=
fsLit
"llvm.memory.barrier"
let
funSig
=
LlvmFunctionDecl
fname
ExternallyVisible
CC_Ccc
LMVoid
...
...
@@ -172,6 +176,7 @@ genCall env (CmmPrim MO_WriteBarrier) _ _ _ = do
where
lmTrue
::
LlvmVar
lmTrue
=
LMLitVar
$
LMIntLit
(
-
1
)
i1
#
endif
-- Handle all other foreign calls and prim ops.
genCall
env
target
res
args
ret
=
do
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment