On 03/28/2011 03:10 PM, Richard Henderson wrote: > On 03/27/2011 03:17 PM, John David Anglin wrote: >> +(define_predicate "reg_or_ior_operand" >> + (match_code "subreg,reg,const_int") >> +{ >> + return (register_operand (op, mode) >> + || (GET_CODE (op) == CONST_INT && ior_mask_p (INTVAL (op)))); >> +}) >> + > > Better written, IMO, as...
(define_predicate "ior_operand" (and (match_code "const_int") (match_test "ior_mask_p (INTVAL (op))"))) (define_predicate "reg_or_ior_operand" (ior (match_operand 0 "register_operand") (match_operand 0 "ior_operand"))) You've already got an ior_operand, which has a redundant test for CONST_INT. Actually, this is true of quite a few of the PA predicates... r~