[Bug target/40129] M16C invalid shift count used by pack_d -> ashldi3
eightdot at hotmail dot com
gcc-bugzilla@gcc.gnu.org
Mon May 18 07:14:00 GMT 2009
------- Comment #2 from eightdot at hotmail dot com 2009-05-18 07:13 -------
mm it apreas to be fixed somewhere between 4.1.1 and 4.4.2
(revision 109661 and 109987 seams to be good candidates afaik in viewcvs but i
cant find which release this is corresponding to..)
input main.c:
output "/usr/libexec/gcc/m32c-unknown-elf/4.1.1/cc1 -mcpu=m16c main.c":
enter #13
mov.w r1,-10[fb]
mov.w #4660,-6[fb]
mov.w #22136,-8[fb]
mov.w -10[fb],r0
mov.w r0,-13[fb]
mov.w -6[fb],r2
mov.w -8[fb],r0
mov.b -13[fb],r1l
neg.b r1l
mov.b r1l,-11[fb]
mov.b -11[fb],r1l
mov.b r1l,r1h
sha.l r1h,r2r0
mov.w r2,-2[fb]
mov.w r0,-4[fb]
mov.w -4[fb],r0
exitd
output "/usr/src/cross/m32c/build/gcc-4.4.0/gcc/cc1 -mcpu=m16c main.c"
_main:
enter #15-2
mov.w r1,-10[fb]
mov.w #4660,-6[fb]
mov.w #22136,-8[fb]
mov.w -10[fb],r0
mov.w r0,-13[fb]
mov.w -6[fb],r2
mov.w -8[fb],r0
mov.b -13[fb],r1l
neg.b r1l
mov.b r1l,-11[fb]
cmp.b #-16,-11[fb]
jge .L2
sha.l #-8,r2r0
sha.l #-8,r2r0
add.b #16,-11[fb]
.L2:
mov.b -11[fb],r1h
sha.l r1h,r2r0
mov.w r2,-2[fb]
mov.w r0,-4[fb]
mov.w -4[fb],r0
exitd
so it works ok for 4.4.0
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40129
More information about the Gcc-bugs
mailing list