aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Edelsohn <edelsohn@gnu.org>2002-07-20 02:20:16 +0000
committerDavid Edelsohn <dje@gcc.gnu.org>2002-07-19 22:20:16 -0400
commite3485bbc86dcb46db022d8e2d4256d319b3c7fcd (patch)
tree0cdebc814b7553ce8066dc536a42bc5050d23e59
parent449655a6fece3dd5149f3b36a3828a4ebc24e378 (diff)
downloadgcc-e3485bbc86dcb46db022d8e2d4256d319b3c7fcd.zip
gcc-e3485bbc86dcb46db022d8e2d4256d319b3c7fcd.tar.gz
gcc-e3485bbc86dcb46db022d8e2d4256d319b3c7fcd.tar.bz2
rs6000.md: Remove ppc630 fpcompare from single fpu list.
* config/rs6000/rs6000.md: Remove ppc630 fpcompare from single fpu list. Separate Power4 compare and delayed_compare. Correct Power4 fpcompare. (fix_truncdfsi2_internal): Restore FPR preference. * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3, mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc. From-SVN: r55601
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/rs6000/rs6000.md16
-rw-r--r--gcc/config/rs6000/t-aix4319
3 files changed, 26 insertions, 18 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0972650..6720f50 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2002-07-19 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
+ fpu list. Separate Power4 compare and delayed_compare. Correct
+ Power4 fpcompare.
+ (fix_truncdfsi2_internal): Restore FPR preference.
+ * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
+ mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc.
+
2002-07-19 Momchil Velikov <velco@fadata.bg>
* reload1.c (reload_as_needed): Duplicate oldpat.
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index aa7cb3a..de76663 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -543,7 +543,7 @@
; fp compare uses fp unit
(define_function_unit "fpu" 1 0
(and (eq_attr "type" "fpcompare")
- (eq_attr "cpu" "rs64a,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630"))
+ (eq_attr "cpu" "rs64a,ppc601,ppc603,ppc604,ppc604e,ppc620"))
5 1)
(define_function_unit "fpu" 1 0
@@ -805,14 +805,14 @@
68 67)
(define_function_unit "iu2" 2 0
- (and (eq_attr "type" "compare,delayed_compare")
+ (and (eq_attr "type" "compare")
(eq_attr "cpu" "power4"))
- 2 1)
+ 3 1)
(define_function_unit "iu2" 2 0
- (and (eq_attr "type" "mtjmpr")
+ (and (eq_attr "type" "delayed_compare")
(eq_attr "cpu" "power4"))
- 3 1)
+ 4 1)
(define_function_unit "bpu" 1 0
(and (eq_attr "type" "mtjmpr")
@@ -834,10 +834,12 @@
(eq_attr "cpu" "power4"))
6 1)
+; adjust_cost increases the cost of dependent branches,
+; so shave a few cycles off for fpcompare.
(define_function_unit "fpu2" 2 0
(and (eq_attr "type" "fpcompare")
(eq_attr "cpu" "power4"))
- 8 2)
+ 5 1)
(define_function_unit "fpu2" 2 0
(and (eq_attr "type" "sdiv,ddiv")
@@ -5505,7 +5507,7 @@
(define_insn "*fix_truncdfsi2_internal"
[(set (match_operand:SI 0 "gpc_reg_operand" "=r")
(fix:SI (match_operand:DF 1 "gpc_reg_operand" "f")))
- (clobber (match_operand:DI 2 "gpc_reg_operand" "=*f"))
+ (clobber (match_operand:DI 2 "gpc_reg_operand" "=f"))
(clobber (match_operand:DI 3 "memory_operand" "=o"))]
"(TARGET_POWER2 || TARGET_POWERPC) && TARGET_HARD_FLOAT"
"#"
diff --git a/gcc/config/rs6000/t-aix43 b/gcc/config/rs6000/t-aix43
index 7be8ebc..1acccf6 100644
--- a/gcc/config/rs6000/t-aix43
+++ b/gcc/config/rs6000/t-aix43
@@ -19,27 +19,24 @@ MULTILIB_OPTIONS = pthread \
MULTILIB_DIRNAMES = pthread \
common power powerpc ppc64
-MULTILIB_MATCHES = mcpu?power=mpower \
- mcpu?power=mrios1 \
+MULTILIB_MATCHES = mcpu?power=mcpu?power \
+ mcpu?power=mcpu?power2 \
+ mcpu?powerpc=mcpu?power3 \
+ mcpu?powerpc=mcpu?power4 \
+ mcpu?powerpc=mcpu?powerpc \
mcpu?power=mcpu?rios1 \
+ mcpu?power=mcpu?rios2 \
mcpu?power=mcpu?rsc \
mcpu?power=mcpu?rsc1 \
- mcpu?power=mpower2 \
- mcpu?power=mrios2 \
- mcpu?power=mcpu?rios2 \
mcpu?powerpc=mcpu?rs64a \
mcpu?powerpc=mcpu?601 \
mcpu?powerpc=mcpu?602 \
mcpu?powerpc=mcpu?603 \
mcpu?powerpc=mcpu?603e \
mcpu?powerpc=mcpu?604 \
+ mcpu?powerpc=mcpu?604e \
mcpu?powerpc=mcpu?620 \
- mcpu?powerpc=mcpu?630 \
- mcpu?powerpc=mcpu?750 \
- mcpu?powerpc=mcpu?403 \
- mcpu?powerpc=mpowerpc \
- mcpu?powerpc=mpowerpc-gpopt \
- mcpu?powerpc=mpowerpc-gfxopt
+ mcpu?powerpc=mcpu?630
LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib