Commit df9af2bb by Kazu Hirata Committed by Kazu Hirata

expr.c (expand_expr_real_1): Don't request a value to expand_assignment.

	* expr.c (expand_expr_real_1) [MODIFY_EXPR]: Don't request a
	value to expand_assignment.

From-SVN: r89245
parent ab51c2f0
2004-10-18 Kazu Hirata <kazu@cs.umass.edu> 2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
* expr.c (expand_expr_real_1) [MODIFY_EXPR]: Don't request a
value to expand_assignment.
2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
* tree-cfg.c (cleanup_tree_cfg): Don't iterate on * tree-cfg.c (cleanup_tree_cfg): Don't iterate on
thread_jumps. thread_jumps.
(thread_jumps): Iterate until no new forwarder block arises. (thread_jumps): Iterate until no new forwarder block arises.
......
...@@ -8069,6 +8069,8 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, ...@@ -8069,6 +8069,8 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode,
temp = 0; temp = 0;
gcc_assert (ignore);
/* Check for |= or &= of a bitfield of size one into another bitfield /* Check for |= or &= of a bitfield of size one into another bitfield
of size 1. In this case, (unless we need the result of the of size 1. In this case, (unless we need the result of the
assignment) we can do this more efficiently with a assignment) we can do this more efficiently with a
...@@ -8077,8 +8079,7 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, ...@@ -8077,8 +8079,7 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode,
??? At this point, we can't get a BIT_FIELD_REF here. But if ??? At this point, we can't get a BIT_FIELD_REF here. But if
things change so we do, this code should be enhanced to things change so we do, this code should be enhanced to
support it. */ support it. */
if (ignore if (TREE_CODE (lhs) == COMPONENT_REF
&& TREE_CODE (lhs) == COMPONENT_REF
&& (TREE_CODE (rhs) == BIT_IOR_EXPR && (TREE_CODE (rhs) == BIT_IOR_EXPR
|| TREE_CODE (rhs) == BIT_AND_EXPR) || TREE_CODE (rhs) == BIT_AND_EXPR)
&& TREE_OPERAND (rhs, 0) == lhs && TREE_OPERAND (rhs, 0) == lhs
...@@ -8101,7 +8102,7 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, ...@@ -8101,7 +8102,7 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode,
return const0_rtx; return const0_rtx;
} }
temp = expand_assignment (lhs, rhs, ! ignore); temp = expand_assignment (lhs, rhs, 0);
return temp; return temp;
} }
......
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