[Bug target/56442] New: Could not identify that register is clobbered already
pitchumani.s at atmel dot com
gcc-bugzilla@gcc.gnu.org
Mon Feb 25 08:42:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56442
Bug #: 56442
Summary: Could not identify that register is clobbered already
Classification: Unclassified
Product: gcc
Version: 4.7.2
Status: UNCONFIRMED
Severity: major
Priority: P3
Component: target
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: pitchumani.s@atmel.com
Wrong code is generated for avr target when gcc-4.7.2 is used.
Test case: dejagnu test gcc.dg/var-expand2.c
command line options: -O2 -funroll-loops -ffast-math -mmcu=atxmega128b1
(snip of assembly)
ldi r24,lo8(array+4)
ldi r25,hi8(array+4)
sub r14,r24
sbc r15,r25
lsr r15
ror r14
lsr r15
ror r14
ldi r25,3 ;; r25 is overwritten
and r14,r25
clr r15
lds r18,array
lds r19,array+1
lds r20,array+2
lds r21,array+3
movw r28,r24 ;; register pair r24/r25 is used
(snip of assembly)
conversation on mailing list:
http://gcc.gnu.org/ml/gcc/2013-02/msg00264.html
More information about the Gcc-bugs
mailing list