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]

PATCH RFA (Re: Fix ARM bug by splitting up iwmmxt_movsi_insn)


Richard Earnshaw <rearnsha@arm.com> writes:

> > That leads to the following patch.  This patch does not introduce any
> > new testsuite compilation failures.  However, most ports don't seem to
> > work this way.  In particular, it's possible that with the original
> > code, in some cases, reload will sometimes choose a register in
> > IWMMXT_GR_REGS, whereas with the patched code, it no longer will.  I'm
> > not sure, and I'd like to hear any feedback which others may have.
> > 
> > (This patch includes a patch to arm_regno_class() which is really a
> > simple bug fix.)
> 
> I'm concerned that the overall approach is wrong here.

I'll keep looking at this, and at Daniel's patch.  In the meantime,
this part of the patch seems obvious, and Daniel has it also.  Is this
OK to check in?


2003-10-10  Ian Lance Taylor  <ian@wasabisystems.com>

	* config/arm/arm.c (arm_regno_class): Handle IWMMXT_GR_REGS.


Index: config/arm/arm.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/arm/arm.c,v
retrieving revision 1.294
diff -u -p -r1.294 arm.c
--- config/arm/arm.c	7 Oct 2003 08:49:35 -0000	1.294
+++ config/arm/arm.c	10 Oct 2003 19:43:02 -0000
@@ -10300,6 +10300,9 @@ arm_regno_class (int regno)
   if (IS_IWMMXT_REGNUM (regno))
     return IWMMXT_REGS;
 
+  if (IS_IWMMXT_GR_REGNUM (regno))
+    return IWMMXT_GR_REGS;
+
   return FPA_REGS;
 }
 


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