[GHC] #14251: LLVM Code Gen messes up registers
GHC
ghc-devs at haskell.org
Thu Sep 20 09:30:39 UTC 2018
#14251: LLVM Code Gen messes up registers
-------------------------------------+-------------------------------------
Reporter: angerman | Owner: (none)
Type: bug | Status: new
Priority: highest | Milestone: 8.6.1
Component: Compiler (LLVM) | Version: 8.3
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Incorrect result | Unknown/Multiple
at runtime | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by awson):
AFAIUI, the most recent takes on this problem are:
1. https://phabricator.haskell.org/D4003 by @angerman
2. https://gist.github.com/kavon/566fc6c21ff51803538884b79dc1d841 by
@kavon (referred from the former)
My understanding is that "1" doesn't quite work (generates wrong code for
handwritten `cmm`).
Also my understanding is that "2" should work (haven't tested it), but
isn't so much aesthetically pleasant, since all padding arguments are of
`FloatReg` type regardless of which type they are at the call-site.
A year has passed since. Neither these two approaches, no other suggested
in the email thread started from https://mail.haskell.org/pipermail/ghc-
devs/2017-September/014700.html, were elaborated further.
I wonder then what are chances of e.g. "2" to be upstreamed if properly
polished?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14251#comment:11>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list