This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH]: Revise gcse.c to handle parallels TRAP_IF and other RTL codes not handled by single_set


On 03/13/14 17:06, John David Anglin wrote:
This patch fixes PR rtl-optimization/60155.

The PA backend has a number of INSN patterns which trap on signed
overflow.  These are
implemented as parallels using the trap_if code.  Currently, single_set
does not consider
a parallel with a trap_if rtx to be a single set.  This causes an ICE in
gcse.c when an insn with
a trap_if is encountered.

The problem is fixed by implementing a gcse specific version of
"single_set" which only
looks at whether there is a single non-dead set in an insn pattern.  It
allows multiple other
sets if they are dead.

Tested on hppa-unknown-linux-gnu, hppa2.0w-hp-hpux11.11 and
hppa64-hp-hpux11.11.

OK for trunk?
Yes.  This is good.  Thanks.

jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]