Commit abb52246 by Richard Kenner

(find_temp_slot_from_address): Check for overlap from BASE_OFFSET if X

is PLUS of virtual_stack_vars_rtx and const.

From-SVN: r12296
parent 2dd4cace
...@@ -1035,7 +1035,12 @@ find_temp_slot_from_address (x) ...@@ -1035,7 +1035,12 @@ find_temp_slot_from_address (x)
if (! p->in_use) if (! p->in_use)
continue; continue;
else if (XEXP (p->slot, 0) == x else if (XEXP (p->slot, 0) == x
|| p->address == x) || p->address == x
|| (GET_CODE (x) == PLUS
&& XEXP (x, 0) == virtual_stack_vars_rtx
&& GET_CODE (XEXP (x, 1)) == CONST_INT
&& INTVAL (XEXP (x, 1)) >= p->base_offset
&& INTVAL (XEXP (x, 1)) < p->base_offset + p->full_size))
return p; return p;
else if (p->address != 0 && GET_CODE (p->address) == EXPR_LIST) else if (p->address != 0 && GET_CODE (p->address) == EXPR_LIST)
......
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