aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/mpc.md
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2014-05-23 18:41:20 +0200
committerSegher Boessenkool <segher@gcc.gnu.org>2014-05-23 18:41:20 +0200
commit892e7fa695536ae398afc23664ee30df3f59a5d3 (patch)
tree9b3fa581539d8e25c226995953241901f465231f /gcc/config/rs6000/mpc.md
parent441e02a5c44543f0afba3549b9939e54bafcff11 (diff)
downloadgcc-892e7fa695536ae398afc23664ee30df3f59a5d3.zip
gcc-892e7fa695536ae398afc23664ee30df3f59a5d3.tar.gz
gcc-892e7fa695536ae398afc23664ee30df3f59a5d3.tar.bz2
rs6000: Make all shift instructions one type
This uses the attributes "var_shift" and "dot" to specify the differences: var_shift_rotate -> shift var_shift=yes delayed_compare -> shift var_shift=no dot=yes var_delayed_compare -> shift var_shift=yes dot=yes From-SVN: r210870
Diffstat (limited to 'gcc/config/rs6000/mpc.md')
-rw-r--r--gcc/config/rs6000/mpc.md10
1 files changed, 6 insertions, 4 deletions
diff --git a/gcc/config/rs6000/mpc.md b/gcc/config/rs6000/mpc.md
index 7fe889c..f83c752 100644
--- a/gcc/config/rs6000/mpc.md
+++ b/gcc/config/rs6000/mpc.md
@@ -41,8 +41,9 @@
"lsu_mpc")
(define_insn_reservation "mpccore-integer" 1
- (and (eq_attr "type" "integer,insert,shift,trap,\
- var_shift_rotate,cntlz,exts,isel")
+ (and (ior (eq_attr "type" "integer,insert,trap,cntlz,exts,isel")
+ (and (eq_attr "type" "shift")
+ (eq_attr "dot" "no")))
(eq_attr "cpu" "mpccore"))
"iu_mpc")
@@ -68,8 +69,9 @@
"mciu_mpc*6")
(define_insn_reservation "mpccore-compare" 3
- (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare,\
- var_delayed_compare")
+ (and (ior (eq_attr "type" "cmp,fast_compare,compare")
+ (and (eq_attr "type" "shift")
+ (eq_attr "dot" "yes")))
(eq_attr "cpu" "mpccore"))
"iu_mpc,nothing,bpu_mpc")