Commit 5b296c8a by David Edelsohn Committed by David Edelsohn

predicates.md (altivec_register_operand): Remove redundant match_code test.

        * config/rs6000/predicates.md (altivec_register_operand): Remove
        redundant match_code test.
        (gpc_reg_operand): Same.
        (cc_reg_operand): Same.
        (cc_reg_not_cr0_operand): Same.

From-SVN: r97902
parent 0be0a2be
2005-04-09 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/predicates.md (altivec_register_operand): Remove
redundant match_code test.
(gpc_reg_operand): Same.
(cc_reg_operand): Same.
(cc_reg_not_cr0_operand): Same.
2005-04-09 Jan Hubicka <jh@suse.cz> 2005-04-09 Jan Hubicka <jh@suse.cz>
Forgotten hunk from my last merge patch: Forgotten hunk from my last merge patch:
......
...@@ -34,11 +34,10 @@ ...@@ -34,11 +34,10 @@
;; Return 1 if op is an Altivec register. ;; Return 1 if op is an Altivec register.
(define_predicate "altivec_register_operand" (define_predicate "altivec_register_operand"
(and (match_code "reg,subreg") (and (match_operand 0 "register_operand")
(and (match_operand 0 "register_operand") (match_test "GET_CODE (op) != REG
(match_test "GET_CODE (op) != REG || ALTIVEC_REGNO_P (REGNO (op))
|| ALTIVEC_REGNO_P (REGNO (op)) || REGNO (op) > LAST_VIRTUAL_REGISTER")))
|| REGNO (op) > LAST_VIRTUAL_REGISTER"))))
;; Return 1 if op is XER register. ;; Return 1 if op is XER register.
(define_predicate "xer_operand" (define_predicate "xer_operand"
...@@ -74,28 +73,25 @@ ...@@ -74,28 +73,25 @@
;; Return 1 if op is a register that is not special. ;; Return 1 if op is a register that is not special.
(define_predicate "gpc_reg_operand" (define_predicate "gpc_reg_operand"
(and (match_code "reg,subreg") (and (match_operand 0 "register_operand")
(and (match_operand 0 "register_operand") (match_test "GET_CODE (op) != REG
(match_test "GET_CODE (op) != REG || (REGNO (op) >= ARG_POINTER_REGNUM
|| (REGNO (op) >= ARG_POINTER_REGNUM && !XER_REGNO_P (REGNO (op)))
&& !XER_REGNO_P (REGNO (op))) || REGNO (op) < MQ_REGNO")))
|| REGNO (op) < MQ_REGNO"))))
;; Return 1 if op is a register that is a condition register field. ;; Return 1 if op is a register that is a condition register field.
(define_predicate "cc_reg_operand" (define_predicate "cc_reg_operand"
(and (match_code "reg,subreg") (and (match_operand 0 "register_operand")
(and (match_operand 0 "register_operand") (match_test "GET_CODE (op) != REG
(match_test "GET_CODE (op) != REG || REGNO (op) > LAST_VIRTUAL_REGISTER
|| REGNO (op) > LAST_VIRTUAL_REGISTER || CR_REGNO_P (REGNO (op))")))
|| CR_REGNO_P (REGNO (op))"))))
;; Return 1 if op is a register that is a condition register field not cr0. ;; Return 1 if op is a register that is a condition register field not cr0.
(define_predicate "cc_reg_not_cr0_operand" (define_predicate "cc_reg_not_cr0_operand"
(and (match_code "reg,subreg") (and (match_operand 0 "register_operand")
(and (match_operand 0 "register_operand") (match_test "GET_CODE (op) != REG
(match_test "GET_CODE (op) != REG || REGNO (op) > LAST_VIRTUAL_REGISTER
|| REGNO (op) > LAST_VIRTUAL_REGISTER || CR_REGNO_NOT_CR0_P (REGNO (op))")))
|| CR_REGNO_NOT_CR0_P (REGNO (op))"))))
;; Return 1 if op is a constant integer valid for D field ;; Return 1 if op is a constant integer valid for D field
;; or non-special register register. ;; or non-special register register.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment