diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 949eb947997..8a8f8a996a2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-12-11 Marek Polacek + + PR sanitizer/59399 + * expr.c (expand_expr_real_1): Remove assert dealing with + internal calls and turn that into a condition instead. + 2013-12-11 Yvan Roux * config/arm/arm.opt (mlra): Enable LRA by default. diff --git a/gcc/expr.c b/gcc/expr.c index 19df9dc0146..225555eaf3b 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -9482,13 +9482,11 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, the same mode we got when the variable was declared. */ if (code == SSA_NAME && (g = SSA_NAME_DEF_STMT (ssa_name)) - && gimple_code (g) == GIMPLE_CALL) - { - gcc_assert (!gimple_call_internal_p (g)); - pmode = promote_function_mode (type, mode, &unsignedp, - gimple_call_fntype (g), - 2); - } + && gimple_code (g) == GIMPLE_CALL + && !gimple_call_internal_p (g)) + pmode = promote_function_mode (type, mode, &unsignedp, + gimple_call_fntype (g), + 2); else pmode = promote_decl_mode (exp, &unsignedp); gcc_assert (GET_MODE (decl_rtl) == pmode);