[GHC] #16354: LLVM Backend generates invalid assembly.
GHC
ghc-devs at haskell.org
Fri Feb 22 13:41:29 UTC 2019
#16354: LLVM Backend generates invalid assembly.
-------------------------------------+-------------------------------------
Reporter: AndreasK | Owner: (none)
Type: bug | Status: new
Priority: high | Milestone:
Component: Compiler | Version: 8.9
(LLVM) |
Keywords: CodeGen | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
{{{
#!haskell
module Main where
import System.Random
import qualified Data.Vector as V
g1 = mkStdGen 0 :: StdGen
v2 = take 10000 $ randoms g1 :: [Int]
main :: IO ()
main = do
undefined
}}}
{{{
$ /e/ghc_regSpill/inplace/bin/ghc-stage2.exe Repro.hs -O2 -fllvm -O2
Loaded package environment from
C:\ghc\msys64\home\Andi\tmp\minmax\unpred\.ghc.environment.x86_64-mingw32-8.7.20190215
[1 of 1] Compiling Main ( Repro.hs, Repro.o )
C:\\ghc\\msys64\\tmp\\ghc385768_0\\ghc_6.s: Assembler messages:
C:\\ghc\\msys64\\tmp\\ghc385768_0\\ghc_6.s:354: Error: junk at end of
line, first unrecognized character is `,'
`gcc.exe' failed in phase `Assembler'. (Exit code: 1)
}}}
I've reproduced this with ghc 8.4/8.6 and HEAD using llvm 7.0.1 on
windows.
It only occurs with -O2.
The issues arise from these directives:
{{{
.section
.rdata,"dr",discard,__xmm at 000000000000004e0000000000000000
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16354>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list