Commit e56fc090 by Hans-Peter Nilsson Committed by Hans-Peter Nilsson

expr.c (store_expr): In condition for checking if value is generated in TARGET...

	* expr.c (store_expr): In condition for checking if value is
	generated in TARGET, move call to expr_size last.

From-SVN: r56217
parent 76c3e73e
2002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
* expr.c (store_expr): In condition for checking if value is
generated in TARGET, move call to expr_size last.
2002-08-11 Neil Booth <neil@daikokuya.co.uk>
* c-common.c (c_common_init): Call preprocess_file instead.
......
......@@ -4238,14 +4238,17 @@ store_expr (exp, target, want_value)
|| (temp != target && (side_effects_p (temp)
|| side_effects_p (target))))
&& TREE_CODE (exp) != ERROR_MARK
/* If there's nothing to copy, don't bother. */
&& expr_size (exp) != const0_rtx
&& ! dont_store_target
/* If store_expr stores a DECL whose DECL_RTL(exp) == TARGET,
but TARGET is not valid memory reference, TEMP will differ
from TARGET although it is really the same location. */
&& (TREE_CODE_CLASS (TREE_CODE (exp)) != 'd'
|| target != DECL_RTL_IF_SET (exp)))
|| target != DECL_RTL_IF_SET (exp))
/* If there's nothing to copy, don't bother. Don't call expr_size
unless necessary, because some front-ends (C++) expr_size-hook
aborts on objects that are not supposed to be bit-copied or
bit-initialized. */
&& expr_size (exp) != const0_rtx)
{
target = protect_from_queue (target, 1);
if (GET_MODE (temp) != GET_MODE (target)
......
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