This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Bug in egcs-1.1 (reduced testcase included)(PPC)
- To: law at cygnus dot com
- Subject: Re: Bug in egcs-1.1 (reduced testcase included)(PPC)
- From: David Edelsohn <dje at watson dot ibm dot com>
- Date: Mon, 17 Aug 1998 15:12:54 -0400
- Cc: Franz Sirl <Franz dot Sirl-kernel at lauterbach dot com>, egcs-patches at cygnus dot com, Michael Meissner <meissner at cygnus dot com>, Hartmut Koptein <koptein at et-inf dot fho-emden dot de>
If SECONDARY_RELOAD_CLASS "in" argument can tell that this is a
SYMBOL_REF (or LABEL_REF or CONST), then this will work. I thought that
you were trying to describe that any SImode load to r0 required a base
register.
I guess that something like the last half of
pa.c:secondary_reload_class() needs to be added to the same function in
rs6000.c where it currently thinks anything can go into GENERAL_REGS. I
think that this problem only would occur with the SVR4-type ABI, so
TARGET_ELF should be tested as well. I am not sure if the PA
read_only_operand() test is appropriate for SVR4 PPC.
An R0_REGS class can be created, but is REGNO_REG_CLASS always
called before SECONDARY_RELOAD_CLASS? r0 can appear in many classes, so
unless it is removed from all other classes, how can one deduce if the
register in question is being used just from the class? For instance, on
the PA, R1_REGS is a subset of GENERAL_REGS and GENERAL_OR_FP_REGS.
David