[GHC] #7598: ghc-stage1 generates wrong assembler on StgCmmPrim (operand out of range)
GHC
cvs-ghc at haskell.org
Wed Jan 16 23:17:43 CET 2013
#7598: ghc-stage1 generates wrong assembler on StgCmmPrim (operand out of range)
--------------------------------+-------------------------------------------
Reporter: kgardas | Owner:
Type: bug | Status: new
Priority: normal | Component: Compiler
Version: 7.7 | Keywords:
Os: Linux | Architecture: powerpc
Failure: Building GHC failed | Blockedby:
Blocking: | Related:
--------------------------------+-------------------------------------------
Comment(by kgardas):
if assembler correctly reports line number, then this should be this:
{{{
98877 .text
98878 .align 2
98879 .long uVbd_srtd-(cN2c_info)+0
98880 .long 4
98881 .long 2162687
98882 cN2c_info:
98883 .LcN2c:
98884 mr 31, 14
98885 andi. 30, 31, 3
98886 cmplwi 30, 2
98887 blt $+8
98888 b .LcNoE
98889 .LcNoD:
98890 lis 31, cNdK_info at ha
98891 addi 31, 31, cNdK_info at l
98892 stw 31, 0(22)
98893 lwz 14, 4(22)
98894 andi. 31, 14, 3
98895 cmpwi 31, 0
->98896 bne .LcNdK
98897 .LcOgw:
98898 lwz 31, 0(14)
98899 mtctr 31
98900 bctr
}}}
am I right assuming we're generating jump and it's too long for PPC to
perform? i.e. bne is conditional branch instruction which should jump just
in a range of 16K. Full assembler file generated attached for your
convenient.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7598#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list