diff options
author | David Edelsohn <edelsohn@gnu.org> | 2002-07-20 02:20:16 +0000 |
---|---|---|
committer | David Edelsohn <dje@gcc.gnu.org> | 2002-07-19 22:20:16 -0400 |
commit | e3485bbc86dcb46db022d8e2d4256d319b3c7fcd (patch) | |
tree | 0cdebc814b7553ce8066dc536a42bc5050d23e59 | |
parent | 449655a6fece3dd5149f3b36a3828a4ebc24e378 (diff) | |
download | gcc-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/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 16 | ||||
-rw-r--r-- | gcc/config/rs6000/t-aix43 | 19 |
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 |