[GHC] #8131: T7571 with WAY=llvm fails, but not WAY=optllvm
GHC
ghc-devs at haskell.org
Mon Sep 16 22:48:24 CEST 2013
#8131: T7571 with WAY=llvm fails, but not WAY=optllvm
----------------------------------------------+----------------------------
Reporter: thoughtpolice | Owner: rwbarton
Type: bug | Status: new
Priority: high | Milestone:
Component: Compiler | Version: 7.7
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: None/Unknown | Unknown/Multiple
Test Case: llvm/should_compile/T8131 | Difficulty: Unknown
Blocking: | Blocked By:
| Related Tickets:
----------------------------------------------+----------------------------
Comment (by rwbarton):
This patch is basically done.
I preserved the four-argument syntax for `prim %memcpy` etc. in `.cmm`
files. This was trickier than I expected due to the tying-the-knot
technique used to resolve Cmm names during parsing: we can't pattern-match
on the alignment `CmmExpr` argument (to check whether it is a `CmmLit`)
while producing the `MO_MemCpy` call. My workaround was to fail in a
"pure" way, with `pprPgmError`, producing a rather ugly error message. A
better solution here is welcome. But, this only affects compilation of
`.cmm` files so it's not so bad if the edges are a bit rough IMO.
Here is the patch for review, particularly of that parsing bit but also
generally.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8131#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list