diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-cfg.c | 6 |
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)) { |