expr.c (expand_expr_real_1): Reinstate fallthrough to TRUTH_ANDIF_EXPR if do_store_flag returns NULL.

2009-07-01  Paolo Bonzini  <bonzini@gnu.org>

	* expr.c (expand_expr_real_1): Reinstate fallthrough to
	TRUTH_ANDIF_EXPR if do_store_flag returns NULL.

From-SVN: r149136
This commit is contained in:
Paolo Bonzini 2009-07-01 11:50:12 +00:00 committed by Paolo Bonzini
parent c29fe0c8bd
commit ce3aea3586
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2009-07-01 Paolo Bonzini <bonzini@gnu.org>
* expr.c (expand_expr_real_1): Reinstate fallthrough to
TRUTH_ANDIF_EXPR if do_store_flag returns NULL.
2009-07-01 Maciej W. Rozycki <macro@linux-mips.org>
* config/vax/vax.h (TARGET_BSD_DIVMOD): New macro. Set to 1.

View File

@ -9109,8 +9109,11 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode,
temp = do_store_flag (exp,
modifier != EXPAND_STACK_PARM ? target : NULL_RTX,
tmode != VOIDmode ? tmode : mode);
gcc_assert (temp);
return temp;
if (temp)
return temp;
/* Use a compare and a jump for BLKmode comparisons, or for function
type comparisons is HAVE_canonicalize_funcptr_for_compare. */
/* Although TRUTH_{AND,OR}IF_EXPR aren't present in GIMPLE, they
are occassionally created by folding during expansion. */