aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-cfg.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 80097cb..1f67c9b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2018-05-16 Richard Biener <rguenther@suse.de>
+
+ * tree-cfg.c (verify_gimple_assign_ternary): Properly
+ verify the [VEC_]COND_EXPR embedded comparison.
+
2018-05-15 Martin Sebor <msebor@redhat.com>
PR tree-optimization/85753
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 2ada965..7f48d2d 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -4137,6 +4137,12 @@ verify_gimple_assign_ternary (gassign *stmt)
}
/* Fallthrough. */
case COND_EXPR:
+ if (!is_gimple_val (rhs1)
+ && verify_gimple_comparison (TREE_TYPE (rhs1),
+ TREE_OPERAND (rhs1, 0),
+ TREE_OPERAND (rhs1, 1),
+ TREE_CODE (rhs1)))
+ return true;
if (!useless_type_conversion_p (lhs_type, rhs2_type)
|| !useless_type_conversion_p (lhs_type, rhs3_type))
{