[PATCH] ira: Don't substitute into TRAP_IF insns (PR78610)
Segher Boessenkool
segher@kernel.crashing.org
Wed Nov 30 13:43:00 GMT 2016
On Wed, Nov 30, 2016 at 01:52:51PM +0100, Richard Biener wrote:
> On Wed, Nov 30, 2016 at 1:46 PM, Segher Boessenkool
> <segher@kernel.crashing.org> wrote:
> > In the testcase, IRA propagates a constant into a TRAP_IF insn, which
> > then becomes an unconditional trap. Unconditional traps are control
> > flow insns so doing this requires surgery on the cfg.
>
> Huh, that's an odd choice ;) I'd say TRAP_IF should be a control-flow insn
> as well, but well...
It doesn't really matter here, converting a conditional TRAP_IF to an
unconditional one requires changing the cfg in any case (and we cannot
do that here).
Making every TRAP_IF a control flow insn means they will end their BB;
that will make some things simpler, sure. It will also limit some of
the RTL optimizations a bit.
Segher
More information about the Gcc-patches
mailing list