summaryrefslogtreecommitdiff
path: root/gcc/config/pa/predicates.md
diff options
context:
space:
mode:
authordanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-27 22:09:36 +0000
committerdanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-27 22:09:36 +0000
commit5f239f1387c82100c270c389cda7f8a536144034 (patch)
tree601bc8f98805b0e3bf199ef2c0a4330145a5a3e1 /gcc/config/pa/predicates.md
parent5521a5909da7279839b6713202044b3be02ca2e3 (diff)
downloadgcc-5f239f1387c82100c270c389cda7f8a536144034.tar.gz
PR target/48288
* config/pa/predicates.md (reg_or_ior_operand): New predicate. * config/pa/pa.md (iordi3): Use new predicate in expander. (iorsi3): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171582 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/pa/predicates.md')
-rw-r--r--gcc/config/pa/predicates.md9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/config/pa/predicates.md b/gcc/config/pa/predicates.md
index 350e42be103..78b7915e255 100644
--- a/gcc/config/pa/predicates.md
+++ b/gcc/config/pa/predicates.md
@@ -409,6 +409,15 @@
|| (GET_CODE (op) == CONST_INT && and_mask_p (INTVAL (op))));
})
+;; True iff OP can be used to compute (reg | OP).
+
+(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))));
+})
+
;; True iff depi can be used to compute (reg | OP).
(define_predicate "ior_operand"