Commit 5d901c31 by Richard Stallman

(convert_move): Don't call protect_from_queue.

(emit_block_move): Protect SIZE.

From-SVN: r1607
parent b3d4e1b2
...@@ -829,7 +829,10 @@ convert_move (to, from, unsignedp) ...@@ -829,7 +829,10 @@ convert_move (to, from, unsignedp)
Both X and MODE may be floating, or both integer. Both X and MODE may be floating, or both integer.
UNSIGNEDP is nonzero if X is an unsigned value. UNSIGNEDP is nonzero if X is an unsigned value.
This can be done by referring to a part of X in place This can be done by referring to a part of X in place
or by copying to a new temporary with conversion. */ or by copying to a new temporary with conversion.
This function *must not* call protect_from_queue
except when putting X into an insn (in which case convert_move does it). */
rtx rtx
convert_to_mode (mode, x, unsignedp) convert_to_mode (mode, x, unsignedp)
...@@ -839,8 +842,6 @@ convert_to_mode (mode, x, unsignedp) ...@@ -839,8 +842,6 @@ convert_to_mode (mode, x, unsignedp)
{ {
register rtx temp; register rtx temp;
x = protect_from_queue (x, 0);
if (mode == GET_MODE (x)) if (mode == GET_MODE (x))
return x; return x;
...@@ -1118,6 +1119,7 @@ emit_block_move (x, y, size, align) ...@@ -1118,6 +1119,7 @@ emit_block_move (x, y, size, align)
x = protect_from_queue (x, 1); x = protect_from_queue (x, 1);
y = protect_from_queue (y, 0); y = protect_from_queue (y, 0);
size = protect_from_queue (size, 0);
if (GET_CODE (x) != MEM) if (GET_CODE (x) != MEM)
abort (); abort ();
...@@ -1847,6 +1849,9 @@ emit_library_call (va_alist) ...@@ -1847,6 +1849,9 @@ emit_library_call (va_alist)
val = convert_to_mode (DFmode, val), mode = DFmode; val = convert_to_mode (DFmode, val), mode = DFmode;
#endif #endif
/* There's no need to call protect_from_queue, because
either emit_move_insn or emit_push_insn will do that. */
/* Make sure it is a reasonable operand for a move or push insn. */ /* Make sure it is a reasonable operand for a move or push insn. */
if (GET_CODE (val) != REG && GET_CODE (val) != MEM if (GET_CODE (val) != REG && GET_CODE (val) != MEM
&& ! (CONSTANT_P (val) && LEGITIMATE_CONSTANT_P (val))) && ! (CONSTANT_P (val) && LEGITIMATE_CONSTANT_P (val)))
......
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