This is the mail archive of the gcc-bugs@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]

[Bug optimization/12630] [3.4 regression] Various unrecognizable insns and ICEs at -O3


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12630



------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2003-10-16 22:29 -------
Subject: Re:  [3.4 regression] Various unrecognizable

> Before reload this does not matter.  As long as clobber mentions other
> register, 94 does not die.

Ah, I think I understand the subtle reason to use match_scratch.

> I am attaching the patch to use match_scratch instead so we don't end up
> with insane clobber of the pseudo, but I don't even have time to compile it
> right now.  I am not sure whether the use of match_scratch in expander
> is valid.  If not, it will be necessary to expand it by hand...

This patch seems to work.  I will install if the check completes
successfully with no regressions.

There needs to be a documentation update.  rtl.texi states

  There is one other known use for clobbering a pseudo register in a
  @code{parallel}: when one of the input operands of the insn is also
  clobbered by the insn.  In this case, using the same pseudo register in
  the clobber and elsewhere in the insn produces the expected results.

Thanks for all your help,
Dave


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