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

Re: asm clobbers, !SMALL_REGISTER_CLASSES patch.


> Date: Sat, 14 Feb 1998 01:28:20 -0700
> From: Jeffrey A Law <law@hurl.cygnus.com>

>   In message <199802130931.UAA18941@discus.anu.edu.au>you write:
>   > On PPC, of course, this is not a problem; generally, if you can't fix
>   > a clobber of a register in a class of its own, eventually gcc will
>   > abort anyway :-(.  The only small register classes contain cr0, lr, ctr,
>   > and mq, and they all have this same problem (although I can't find an
>   > example for ctr, because I can't get gcc to use it at all... this is
>   > probably a bug).
> Yes, but your patch can/will end up breaking other ports, possibly
> more so than they currently break.

I said that in my first message.  Isn't it great we now have EGCS, so
we can just find out what, if anything, breaks, rather than trying to
guess?

The reason this patch is `safe' is that it doesn't do anything that
the user couldn't have done (except for the cases involving MODE_CC,
which I'm pretty sure only affect ppc).  It may (I haven't seen an
example yet and am not sure that such a thing exists) cause gcc to
crash, but if you can show me an input which crashes gcc with this
patch I can show you an input which causes gcc to crash _without_ this
patch (excepting mistakes in the patch, of course).

Any volunteers to rewrite gcc's reload pass? :-)

--
Geoff Keating <Geoff.Keating@anu.edu.au>


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