Commit 199b61d8 by Richard Kenner

(preserve_rtl_expr_result): find_temp_slot_from_address now used.

Don't bring the temp slot to an inner level than it was.

From-SVN: r8427
parent ca854c05
...@@ -1098,14 +1098,14 @@ preserve_rtl_expr_result (x) ...@@ -1098,14 +1098,14 @@ preserve_rtl_expr_result (x)
if (x == 0 || GET_CODE (x) != MEM || CONSTANT_P (XEXP (x, 0))) if (x == 0 || GET_CODE (x) != MEM || CONSTANT_P (XEXP (x, 0)))
return; return;
/* If we can find a match, move it to our level. */ /* If we can find a match, move it to our level unless it is already at
for (p = temp_slots; p; p = p->next) an upper level. */
if (p->in_use && rtx_equal_p (x, p->slot)) p = find_temp_slot_from_address (XEXP (x, 0));
{ if (p != 0)
p->level = temp_slot_level; {
p->rtl_expr = 0; p->level = MIN (p->level, temp_slot_level);
return; p->rtl_expr = 0;
} }
return; return;
} }
......
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