Commit 3f3af9df by Jakub Jelinek Committed by Jakub Jelinek

re PR middle-end/50754 (ICE in expand_debug_expr, at cfgexpand.c:3341)

	PR middle-end/50754
	* cfgexpand.c (expand_debug_expr): Handle WIDEN_LSHIFT_EXPR, ignore
	VEC_PERM_EXPR.

From-SVN: r180201
parent da004dac
2011-10-19 Jakub Jelinek <jakub@redhat.com>
PR middle-end/50754
* cfgexpand.c (expand_debug_expr): Handle WIDEN_LSHIFT_EXPR, ignore
VEC_PERM_EXPR.
2011-10-19 Bernd Schmidt <bernds@codesourcery.com>
* regrename.h: New file.
......@@ -3267,6 +3267,7 @@ expand_debug_expr (tree exp)
case VEC_WIDEN_MULT_LO_EXPR:
case VEC_WIDEN_LSHIFT_HI_EXPR:
case VEC_WIDEN_LSHIFT_LO_EXPR:
case VEC_PERM_EXPR:
return NULL;
/* Misc codes. */
......@@ -3321,6 +3322,7 @@ expand_debug_expr (tree exp)
return NULL;
case WIDEN_SUM_EXPR:
case WIDEN_LSHIFT_EXPR:
if (SCALAR_INT_MODE_P (GET_MODE (op0))
&& SCALAR_INT_MODE_P (mode))
{
......@@ -3329,7 +3331,8 @@ expand_debug_expr (tree exp)
0)))
? ZERO_EXTEND : SIGN_EXTEND, mode, op0,
inner_mode);
return simplify_gen_binary (PLUS, mode, op0, op1);
return simplify_gen_binary (TREE_CODE (exp) == WIDEN_LSHIFT_EXPR
? ASHIFT : PLUS, mode, op0, op1);
}
return NULL;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment