[Bug target/54429] [SH] SImode values get ferried through FPUL and FP regs for -O0
olegendo at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Oct 12 17:28:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54429
--- Comment #6 from Oleg Endo <olegendo at gcc dot gnu.org> ---
A test case for this problem is gcc/testsuite/g++.dg/tls/thread_local-order1.C,
which is compiled without optimizations and contains the following sequence:
stc gbr,r1
mov.l .L20,r2
add r2,r1
lds r1,fpul
fsts fpul,fr1
flds fr1,fpul
sts fpul,r0
mov r14,r15
lds.l @r15+,pr
mov.l @r15+,r14
rts
nop
what the code is actually doing:
stc gbr,r1
mov.l .L20,r2
add r2,r1
mov r1,r0
mov r14,r15
lds.l @r15+,pr
mov.l @r15+,r14
rts
nop
More information about the Gcc-bugs
mailing list