On 11/27/14 18:44, Segher Boessenkool wrote:
If one of the resulting insns is a noop set it is safe to allow the
combination, for it will never lead to a loop: any following combination
using that noop will delete it. In fact, in most cases combine deletes
the noop immediately; for cc0 targets it does not in some cases, but it
deletes another insn in that case (a following jump insn).
This fixes PR52714.
2014-11-27 Segher Boessenkool <seg...@kernel.crashing.org>
gcc/
PR rtl-optimization/52714
* combine.c (try_combine): Allow combining two insns into two
new insns if at least one of those is a noop.
Also OK with a testcase. I'd recommend just using the one from 52714,
make it m68k specific. Not sure if it's best to scan the assembly or
.combine dump -- your call.
jeff