diff options
author | segher <segher@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-09-02 11:26:20 +0000 |
---|---|---|
committer | segher <segher@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-09-02 11:26:20 +0000 |
commit | 88599a7ab3e2747a5908c4446ea5fb16f7e0ba89 (patch) | |
tree | 4688e3af785179ec7c369fbc4a11a78aa2452b2e /gcc/config/rs6000/6xx.md | |
parent | 6b5b05da133175719fa3cdd58ed16574d6fa234a (diff) | |
download | gcc-88599a7ab3e2747a5908c4446ea5fb16f7e0ba89.tar.gz |
2014-09-02 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/40x.md (ppc403-integer): Move "exts" to "no dot".
(ppc403-compare): Add "exts with dot" case.
* config/rs6000/440.md (ppc440-integer, ppc440-compare): As above.
* config/rs6000/476.md (ppc476-simple-integer, ppc476-compare): Ditto.
* config/rs6000/601.md (ppc601-integer, ppc601-compare): Ditto.
* config/rs6000/603.md (ppc603-integer, ppc603-compare): Ditto.
* config/rs6000/6xx.md (ppc604-integer, ppc604-compare): Ditto.
* config/rs6000/7450.md (ppc7450-integer, ppc7450-compare): Ditto.
* config/rs6000/7xx.md (ppc750-integer, ppc750-compare): Ditto.
* config/rs6000/cell.md (cell-integer, cell-fast-cmp,
cell-cmp-microcoded): Similarly.
* config/rs6000/e300c2c3.md (ppce300c3_iu, ppce300c3_cmp): As before.
* config/rs6000/e500mc64.md (e500mc64_su, e500mc64_su2): Ditto.
* config/rs6000/e5500.md (e5500_sfx, e5500_sfx2): Ditto.
* config/rs6000/e6500.md (e6500_sfx, e6500_sfx2): Ditto.
* config/rs6000/mpc.md (mpccore-integer, mpccore-compare): Ditto.
* config/rs6000/power4.md (power4-integer, power4-compare): Ditto.
* config/rs6000/power5.md (power5-integer, power5-compare): Ditto.
* config/rs6000/power6.md (power6-exts): Add "no dot" condition.
(power6-compare): Add "exts with dot" case.
* config/rs6000/power7.md (power7-integer, power7-compare): As before.
* config/rs6000/power8.md (power8-1cyc, power8-compare): Ditto.
* config/rs6000/rs64.md (rs64a-integer, rs64a-compare): Ditto.
* config/rs6000/predicates.md (lwa_operand): Don't allow memory
if avoiding Cell microcode.
* config/rs6000/rs6000.c (rs6000_adjust_cost): Handle exts+dot case.
(is_cracked_insn): Ditto.
(insn_must_be_first_in_group): Ditto.
* config/rs6000/rs6000.md (dot): Adjust comment.
(cell_micro): Handle exts+dot.
(extendqidi2, extendhidi2, extendsidi2, *extendsidi2_lfiwax,
*extendsidi2_nocell, *extendsidi2_nocell, extendqisi2, extendqihi2,
extendhisi2, 16 anonymous instructions, and 12 splitters): Delete.
(extendqi<mode>2, *extendqi<mode>2_dot, *extendqi<mode>2_dot2,
extendhi<mode>2, *extendhi<mode>2, *extendhi<mode>2_noload,
*extendhi<mode>2_dot, *extendhi<mode>2_dot2, extendsi<mode>2,
*extendsi<mode>2_dot, *extendsi<mode>2_dot2): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214816 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000/6xx.md')
-rw-r--r-- | gcc/config/rs6000/6xx.md | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/rs6000/6xx.md b/gcc/config/rs6000/6xx.md index 9d6ba050063..db8346913d3 100644 --- a/gcc/config/rs6000/6xx.md +++ b/gcc/config/rs6000/6xx.md @@ -73,8 +73,8 @@ "lsu_6xx") (define_insn_reservation "ppc604-integer" 1 - (and (ior (eq_attr "type" "integer,insert,trap,cntlz,exts,isel") - (and (eq_attr "type" "add,logical,shift") + (and (ior (eq_attr "type" "integer,insert,trap,cntlz,isel") + (and (eq_attr "type" "add,logical,shift,exts") (eq_attr "dot" "no"))) (eq_attr "cpu" "ppc604,ppc604e,ppc620,ppc630")) "iu1_6xx|iu2_6xx") @@ -148,7 +148,7 @@ (define_insn_reservation "ppc604-compare" 3 (and (ior (eq_attr "type" "cmp,compare") - (and (eq_attr "type" "add,logical,shift") + (and (eq_attr "type" "add,logical,shift,exts") (eq_attr "dot" "yes"))) (eq_attr "cpu" "ppc604,ppc604e,ppc620,ppc630")) "(iu1_6xx|iu2_6xx)") |