This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Crash while scanning queued lists
- To: law at cygnus dot com
- Subject: Re: Crash while scanning queued lists
- From: Alexandre Oliva <aoliva at cygnus dot com>
- Date: 20 May 2000 08:09:04 -0300
- Cc: gcc-patches at gcc dot gnu dot org
- Organization: Cygnus Solutions, a Red Hat Company
- References: <3430.958671851@upchuck>
On May 18, 2000, Jeffrey A Law <law@cygnus.com> wrote:
> In message <oru2fvpx4q.fsf@saci.lsd.ic.unicamp.br>you write:
>> On May 18, 2000, Jeffrey A Law <law@cygnus.com> wrote:
>>
>> > In message <orwvkstcvg.fsf@saci.lsd.ic.unicamp.br>you write:
>> >> --=-=-=
>> >>
>> >> gcc.c-torture/execute/va-arg-5.c (and a couple of other va-arg tests)
>> >> won't compile with -O0 or -O1 on the mn10300 port. The problem is
>> >> that, given this insn:
>> > [ ... ]
>> > Errr, I don't think we're supposed to have any QUEUED expressions which live
>> > beyond initial rtl generation.
>> I'll try to figure out why they're surviving.
> I'd look at the code which sets up LIBCALL/RETVAL notes for libcall
> sequences which I belive is in optabs.c.
Thanks for the lead. I'm not sure this is the best place to add calls
to protect_from_queue, but it does the job. Ok to install?
Index: gcc/ChangeLog
from Alexandre Oliva <aoliva@cygnus.com>
* optabs.c (prepare_cmp_insn): Protect floats from queue.
Index: gcc/optabs.c
===================================================================
RCS file: /cvs/cvsfiles/devo/gcc/optabs.c,v
retrieving revision 1.128
diff -u -r1.128 optabs.c
--- gcc/optabs.c 2000/05/15 17:48:00 1.128
+++ gcc/optabs.c 2000/05/20 11:05:38
@@ -3089,7 +3089,11 @@
}
if (class == MODE_FLOAT)
- prepare_float_lib_cmp (px, py, pcomparison, pmode, punsignedp);
+ {
+ *px = protect_from_queue (*px, 0);
+ *py = protect_from_queue (*py, 0);
+ prepare_float_lib_cmp (px, py, pcomparison, pmode, punsignedp);
+ }
else
abort ();
--
Alexandre Oliva Enjoy Guaranį, see http://www.ic.unicamp.br/~oliva/
Cygnus Solutions, a Red Hat company aoliva@{redhat, cygnus}.com
Free Software Developer and Evangelist CS PhD student at IC-Unicamp
oliva@{lsd.ic.unicamp.br, gnu.org} Write to mailing lists, not to me