diff options
Diffstat (limited to 'gcc/config/rs6000/603.md')
-rw-r--r-- | gcc/config/rs6000/603.md | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gcc/config/rs6000/603.md b/gcc/config/rs6000/603.md index 5f38741af19..f64f4287c1b 100644 --- a/gcc/config/rs6000/603.md +++ b/gcc/config/rs6000/603.md @@ -58,8 +58,9 @@ "lsu_603") (define_insn_reservation "ppc603-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" "ppc603")) "iu_603") @@ -92,8 +93,9 @@ "iu_603*37") (define_insn_reservation "ppc603-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" "ppc603")) "iu_603,nothing,bpu_603") |