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]

Re: patch: disable string insns on ppc e500



On Tuesday, March 11, 2003, at 01:32 PM, Geoff Keating wrote:


Date: Tue, 11 Mar 2003 13:23:04 -0800
Cc: Geoff Keating <geoffk at geoffk dot org>, David Edelsohn <dje at watson dot ibm dot com>
From: Aldy Hernandez <aldy at quesejoda dot com>
X-OriginalArrivalTime: 11 Mar 2003 21:23:09.0890 (UTC) FILETIME=[6A38EA20:01C2E814]


As discussed. This fixes a gazillion -Os regressions on the e500.

Applied to mainline.

No, no, no. TARGET_SPE != CPU_E500. Please use the right test.

Actually it does, but that's purely coincidental:


eabi.h:#define TARGET_SPE (rs6000_cpu == PROCESSOR_PPC8540)

Now that you mention it, sometime I should fix 90% of TARGET_SPE macros to TARGET_E500 or something like it.

Do you approve of this version?

2003-03-11 Aldy Hernandez <aldyh at redhat dot com>

	* config/rs6000/rs6000.c (rs6000_override_options): Use cpu type
	instead of TARGET_SPE.

Index: config/rs6000/rs6000.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/rs6000/rs6000.c,v
retrieving revision 1.437
diff -c -p -r1.437 rs6000.c
*** config/rs6000/rs6000.c	11 Mar 2003 21:26:12 -0000	1.437
--- config/rs6000/rs6000.c	11 Mar 2003 21:46:16 -0000
*************** rs6000_override_options (default_cpu)
*** 700,706 ****

    /* The e500 does not have string instructions, and we set
       MASK_STRING above when optimizing for size.  */
!   if (TARGET_SPE && (target_flags & MASK_STRING) != 0)
      target_flags = target_flags & ~MASK_STRING;

    /* Handle -m(no-)longcall option.  This is a bit of a cheap hack,
--- 700,706 ----

/* The e500 does not have string instructions, and we set
MASK_STRING above when optimizing for size. */
! if (rs6000_cpu == PROCESSOR_PPC8540 && (target_flags & MASK_STRING) != 0)
target_flags = target_flags & ~MASK_STRING;


/* Handle -m(no-)longcall option. This is a bit of a cheap hack,


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