Gimplify vec_cond_expr with condition inside
PR middle-end/70240 PR middle-end/68215 PR tree-opt/68714 * gimplify.c (gimplify_expr) [VEC_COND_EXPR]: Gimplify the first operand as is_gimple_condexpr. Co-Authored-By: Richard Biener <rguenther@suse.de> From-SVN: r234271
This commit is contained in:
parent
9e0218fcbe
commit
e93ed60e7b
@ -1,3 +1,12 @@
|
||||
2016-03-16 Richard Henderson <rth@redhat.com>
|
||||
Richard Biener <rguenth@suse.de>
|
||||
|
||||
PR middle-end/70240
|
||||
PR middle-end/68215
|
||||
PR tree-opt/68714
|
||||
* gimplify.c (gimplify_expr) [VEC_COND_EXPR]: Gimplify the
|
||||
first operand as is_gimple_condexpr.
|
||||
|
||||
2016-03-16 Richard Henderson <rth@redhat.com>
|
||||
|
||||
PR target/70048
|
||||
|
@ -10799,8 +10799,23 @@ gimplify_expr (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p,
|
||||
goto expr_2;
|
||||
}
|
||||
|
||||
case FMA_EXPR:
|
||||
case VEC_COND_EXPR:
|
||||
{
|
||||
enum gimplify_status r0, r1, r2;
|
||||
|
||||
r0 = gimplify_expr (&TREE_OPERAND (*expr_p, 0), pre_p,
|
||||
post_p, is_gimple_condexpr, fb_rvalue);
|
||||
r1 = gimplify_expr (&TREE_OPERAND (*expr_p, 1), pre_p,
|
||||
post_p, is_gimple_val, fb_rvalue);
|
||||
r2 = gimplify_expr (&TREE_OPERAND (*expr_p, 2), pre_p,
|
||||
post_p, is_gimple_val, fb_rvalue);
|
||||
|
||||
ret = MIN (MIN (r0, r1), r2);
|
||||
recalculate_side_effects (*expr_p);
|
||||
}
|
||||
break;
|
||||
|
||||
case FMA_EXPR:
|
||||
case VEC_PERM_EXPR:
|
||||
/* Classified as tcc_expression. */
|
||||
goto expr_3;
|
||||
|
Loading…
x
Reference in New Issue
Block a user