This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH: rs6000: minor scheduler fixes
- From: Dale Johannesen <dalej at apple dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 5 Dec 2001 13:53:48 -0800
- Subject: PATCH: rs6000: minor scheduler fixes
This removes a (harmless) use of "iu" for 750/7400
(these CPUs should use "iu2" throughout). Also, move "mtjmpr"
to the correct functional unit for 750/7400/7450.
Bootstrapped and tested on darwin.
2001-12-05 Dale Johannesen <dalej@apple.com>
* config/rs6000/rs6000.md: remove "iu" reference
for 750/7400; move "mtjmpr" to correct FU for
750/7400/7450.
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/rs6000/rs6000.md,v
retrieving revision 1.141
diff -u -d -b -w -c -3 -p -r1.141 rs6000.md
*** rs6000.md 2001/12/01 01:59:00 1.141
--- rs6000.md 2001/12/05 19:12:33
***************
*** 396,406 ****
; some extra cycles added by TARGET_SCHED_ADJUST_COST between compare
; and a following branch, to reduce mispredicts
- (define_function_unit "iu" 1 0
- (and (eq_attr "type" "compare,delayed_compare")
- (eq_attr "cpu" "ppc750,ppc7400"))
- 1 1)
-
(define_function_unit "iu3" 3 0
(and (eq_attr "type" "compare,delayed_compare")
(eq_attr "cpu" "ppc7450"))
--- 411,416 ----
***************
*** 460,468 ****
(define_function_unit "bpu" 1 0
(and (eq_attr "type" "mtjmpr")
! (eq_attr "cpu"
"mpccore,ppc403,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630,ppc750,ppc7400,
ppc7450"))
4 1)
(define_function_unit "bpu" 1 0
(and (eq_attr "type" "cr_logical")
(eq_attr "cpu" "rios1,rios2,ppc604"))
--- 470,488 ----
(define_function_unit "bpu" 1 0
(and (eq_attr "type" "mtjmpr")
! (eq_attr "cpu"
"mpccore,ppc403,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630"))
4 1)
+ (define_function_unit "sru" 1 0
+ (and (eq_attr "type" "mtjmpr")
+ (eq_attr "cpu" "ppc750,ppc7400"))
+ 2 2)
+
+ (define_function_unit "imuldiv" 1 0
+ (and (eq_attr "type" "mtjmpr")
+ (eq_attr "cpu" "ppc7450"))
+ 2 2)
+
(define_function_unit "bpu" 1 0
(and (eq_attr "type" "cr_logical")