[Bug target/63390] [SH] Hoist/schedule constant pool loads
olegendo at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Sep 28 22:26:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63390
--- Comment #2 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to Oleg Endo from comment #1)
> .L4:
> mov.l @r9,r4 <<<< constant load
> shlr r4
> tst r4,r4
> bt .L2
> mov.l .L12,r5
> jsr @r10
> nop
> dt r8
> bf .L4
> .L10:
> lds.l @r15+,pr
> mov.l @r15+,r10
> mov.l @r15+,r9
> rts
> mov.l @r15+,r8
I've marked the wrong load insn as constant load. In this case hoisting it out
of the loop wouldn't make lots of sense, since it's loaded into the call
clobbered register r5. Bad example. But it would still be better to hoist the
load into the preceding basic block.
More information about the Gcc-bugs
mailing list