Mercurial > hg > CbC > CbC_gcc
diff gcc/config/ia64/predicates.md @ 55:77e2b8dfacca gcc-4.4.5
update it from 4.4.3 to 4.5.0
author | ryoma <e075725@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 12 Feb 2010 23:39:51 +0900 |
parents | a06113de4d67 |
children | f6334be47118 |
line wrap: on
line diff
--- a/gcc/config/ia64/predicates.md Sun Feb 07 18:28:00 2010 +0900 +++ b/gcc/config/ia64/predicates.md Fri Feb 12 23:39:51 2010 +0900 @@ -281,6 +281,12 @@ || GET_CODE (XEXP (op, 0)) != POST_MODIFY || GET_CODE (XEXP (XEXP (XEXP (op, 0), 1), 1)) != REG"))) +;; Like destination_operand, but don't allow any post-increments. +(define_predicate "not_postinc_destination_operand" + (and (match_operand 0 "nonimmediate_operand") + (match_test "GET_CODE (op) != MEM + || GET_RTX_CLASS (GET_CODE (XEXP (op, 0))) != RTX_AUTOINC"))) + ;; Like memory_operand, but don't allow post-increments. (define_predicate "not_postinc_memory_operand" (and (match_operand 0 "memory_operand") @@ -332,6 +338,12 @@ } }) +;; Like move_operand but don't allow post-increments. +(define_predicate "not_postinc_move_operand" + (and (match_operand 0 "move_operand") + (match_test "GET_CODE (op) != MEM + || GET_RTX_CLASS (GET_CODE (XEXP (op, 0))) != RTX_AUTOINC"))) + ;; True if OP is a register operand that is (or could be) a GR reg. (define_predicate "gr_register_operand" (match_operand 0 "register_operand") @@ -536,6 +548,11 @@ (and (match_code "const_double,const_vector") (match_test "op == CONST0_RTX (GET_MODE (op))")))) +;; Return 1 if OP is a valid comparison operator for "cbranch" instructions. +(define_predicate "ia64_cbranch_operator" + (ior (match_operand 0 "ordered_comparison_operator") + (match_code "ordered,unordered"))) + ;; True if this is a comparison operator, which accepts a normal 8-bit ;; signed immediate operand. (define_predicate "normal_comparison_operator"