diff options
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/sparc/sparc.md | 12 |
2 files changed, 7 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7b9589a..c77cef1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -111,9 +111,7 @@ (movdi_cc_reg_sp64): Use arith10_operand predicate. (movdi_cc_reg_sp64_trunc): Delete. (cmp_zero_extract, cmp_zero_extract_sp64): Use small_int_operand. - (adddi3_insn_sp32, addx, cmp_cc_plus, cmp_ccx_plus, cmp_cc_plus_set, - cmp_ccx_plus_set): Use register_operand predicate. - (adddi3_sp64, cmp_ccx_plus_set): Use arith_operand predicate. + (adddi3_sp64, cmp_ccx_plus, cmp_ccx_plus_set): Use arith_operand. (subdi3_sp32): Delete. (subdi3_insn_sp32): Change to define_insn_and_split. (subdi3_sp64, cmp_minus_ccx, cmp_minus_ccx_set): Use arith_operand. diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md index 5b84037..eb7ce08 100644 --- a/gcc/config/sparc/sparc.md +++ b/gcc/config/sparc/sparc.md @@ -4858,7 +4858,7 @@ (define_insn_and_split "adddi3_insn_sp32" [(set (match_operand:DI 0 "register_operand" "=r") - (plus:DI (match_operand:DI 1 "register_operand" "%r") + (plus:DI (match_operand:DI 1 "arith_double_operand" "%r") (match_operand:DI 2 "arith_double_operand" "rHI"))) (clobber (reg:CC 100))] "! TARGET_ARCH64" @@ -4897,7 +4897,7 @@ ;; LTU here means "carry set" (define_insn "addx" [(set (match_operand:SI 0 "register_operand" "=r") - (plus:SI (plus:SI (match_operand:SI 1 "register_operand" "%r") + (plus:SI (plus:SI (match_operand:SI 1 "arith_operand" "%r") (match_operand:SI 2 "arith_operand" "rI")) (ltu:SI (reg:CC_NOOV 100) (const_int 0))))] "" @@ -4973,7 +4973,7 @@ (define_insn "*cmp_cc_plus" [(set (reg:CC_NOOV 100) - (compare:CC_NOOV (plus:SI (match_operand:SI 0 "register_operand" "%r") + (compare:CC_NOOV (plus:SI (match_operand:SI 0 "arith_operand" "%r") (match_operand:SI 1 "arith_operand" "rI")) (const_int 0)))] "" @@ -4982,7 +4982,7 @@ (define_insn "*cmp_ccx_plus" [(set (reg:CCX_NOOV 100) - (compare:CCX_NOOV (plus:DI (match_operand:DI 0 "register_operand" "%r") + (compare:CCX_NOOV (plus:DI (match_operand:DI 0 "arith_operand" "%r") (match_operand:DI 1 "arith_operand" "rI")) (const_int 0)))] "TARGET_ARCH64" @@ -4991,7 +4991,7 @@ (define_insn "*cmp_cc_plus_set" [(set (reg:CC_NOOV 100) - (compare:CC_NOOV (plus:SI (match_operand:SI 1 "register_operand" "%r") + (compare:CC_NOOV (plus:SI (match_operand:SI 1 "arith_operand" "%r") (match_operand:SI 2 "arith_operand" "rI")) (const_int 0))) (set (match_operand:SI 0 "register_operand" "=r") @@ -5002,7 +5002,7 @@ (define_insn "*cmp_ccx_plus_set" [(set (reg:CCX_NOOV 100) - (compare:CCX_NOOV (plus:DI (match_operand:DI 1 "register_operand" "%r") + (compare:CCX_NOOV (plus:DI (match_operand:DI 1 "arith_operand" "%r") (match_operand:DI 2 "arith_operand" "rI")) (const_int 0))) (set (match_operand:DI 0 "register_operand" "=r") |