#5433: Compiler generates invalid assembly with "bad register name"
---------------------------------+------------------------------------------
Reporter: bos | Owner:
Type: bug | Status: new
Priority: normal | Component: Compiler
Version: 7.2.1 | Keywords:
Testcase: | Blockedby:
Os: Unknown/Multiple | Blocking:
Architecture: x86 | Failure: Compile-time crash
---------------------------------+------------------------------------------
While working on the [http://hackage.haskell.org/package/statistics
statistics package] last night, my automated build found a regression in
GHC 7.2.1's code generator:
{{{
[17 of 23] Compiling Statistics.Distribution.Poisson (
Statistics/Distribution/Poisson.hs,
dist/build/Statistics/Distribution/Poisson.o )
/tmp/ghc22105_0/ghc22105_0.s: Assembler messages:
/tmp/ghc22105_0/ghc22105_0.s:5520:0:
Error: bad register name `%st(-16)'
}}}
As you can see from the [https://jenkins.serpentine.com/job/statistics/16/
build output], this code compiles fine with 6.12 and 7.0. These are all
32-bit versions of GHC on a 32-bit Fedora 15 system. This code compiles
without a problem on my 64-bit Mac running a 64-bit 7.2.1 release.
I bisected my changes in the statistics tree, and found that it's at
[https://github.com/bos/statistics/commit/9cd9058379bf91ffd3ccd54163f963cd4d1e8f34
this exact change] that 7.2.1 transitions from generating good code to
bad.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5433>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs