summaryrefslogtreecommitdiff
path: root/gcc/config/arm/predicates.md
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/arm/predicates.md')
-rw-r--r--gcc/config/arm/predicates.md6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/config/arm/predicates.md b/gcc/config/arm/predicates.md
index 06c15e29825..f4a4515fa39 100644
--- a/gcc/config/arm/predicates.md
+++ b/gcc/config/arm/predicates.md
@@ -321,6 +321,12 @@
|| maybe_get_arm_condition_code (op) == ARM_NE
|| maybe_get_arm_condition_code (op) == ARM_VC")))
+(define_special_predicate "arm_cond_move_operator"
+ (if_then_else (match_test "arm_restrict_it")
+ (and (match_test "TARGET_FPU_ARMV8")
+ (match_operand 0 "arm_vsel_comparison_operator"))
+ (match_operand 0 "expandable_comparison_operator")))
+
(define_special_predicate "noov_comparison_operator"
(match_code "lt,ge,eq,ne"))