diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d5278cef3e4..afbf5af7c1e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2005-05-11 Richard Sandiford + + * config/mips/7000.md (rm7_impy_si_mult): Just match imul and imadd. + Remove hilo_operand check. + (rm7_impy_si_mul): Just match imul3. Remove hilo_operand check. + * config/mips/predicates.md (hilo_operand): Delete. + 2005-05-11 Richard Sandiford * config/mips/sr71k.md, config/mips/7000.md: Reformat. diff --git a/gcc/config/mips/7000.md b/gcc/config/mips/7000.md index a520e081086..9f04039d47c 100644 --- a/gcc/config/mips/7000.md +++ b/gcc/config/mips/7000.md @@ -115,17 +115,15 @@ (define_insn_reservation "rm7_impy_si_mult" 5 (and (eq_attr "cpu" "r7000") - (and (eq_attr "type" "imul,imul3,imadd") - (and (eq_attr "mode" "SI") - (match_operand 0 "hilo_operand")))) + (and (eq_attr "type" "imul,imadd") + (eq_attr "mode" "SI"))) "rm7_impydiv+(rm7_impydiv_iter*3)") ;; There are an additional 2 stall cycles. (define_insn_reservation "rm7_impy_si_mul" 2 (and (eq_attr "cpu" "r7000") - (and (eq_attr "type" "imul,imul3,imadd") - (and (eq_attr "mode" "SI") - (not (match_operand 0 "hilo_operand"))))) + (and (eq_attr "type" "imul3") + (eq_attr "mode" "SI"))) "rm7_impydiv") (define_insn_reservation "rm7_impy_di" 9 diff --git a/gcc/config/mips/predicates.md b/gcc/config/mips/predicates.md index 9e9acdae9f0..d486cfc10c4 100644 --- a/gcc/config/mips/predicates.md +++ b/gcc/config/mips/predicates.md @@ -69,10 +69,6 @@ (and (match_code "reg") (match_test "FP_REG_P (REGNO (op))"))) -(define_predicate "hilo_operand" - (and (match_code "reg") - (match_test "MD_REG_P (REGNO (op))"))) - (define_predicate "lo_operand" (and (match_code "reg") (match_test "REGNO (op) == LO_REGNUM")))