i386.md (ix86_code_end): Move the initialization of xops array near the consumer.

* config/i386/i386.md (ix86_code_end): Move the initialization of
	xops array near the consumer.  Use AX_REG and SP_REG instead of
	numerical constants.

From-SVN: r164583
This commit is contained in:
Uros Bizjak 2010-09-24 08:10:35 +02:00
parent be1f1ed97b
commit 6fd71fde8b
3 changed files with 16 additions and 11 deletions

View File

@ -1,9 +1,14 @@
2010-09-24 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (ix86_code_end): Move the initialization of
xops array near the consumer. Use AX_REG and SP_REG instead of
numerical constants.
2010-09-24 Nicola Pero <nicola.pero@meta-innovation.com>
* c-typeck.c (convert_arguments): Use warning 'too many arguments
to method [methodname]' for an Objective-C method instead of the
less satisfactory 'too many arguments to function' (with no method
name).
* c-typeck.c (convert_arguments): Use warning 'too many arguments to
method [methodname]' for an Objective-C method instead of the less
satisfactory 'too many arguments to function' (with no method name).
2010-09-23 Eric Botcazou <ebotcazou@adacore.com>

View File

@ -7964,12 +7964,12 @@ ix86_code_end (void)
rtx xops[2];
int regno;
for (regno = 0; regno < 8; ++regno)
for (regno = AX_REG; regno <= SP_REG; regno++)
{
char name[32];
tree decl;
if (! ((pic_labels_used >> regno) & 1))
if (!(pic_labels_used & (1 << regno)))
continue;
get_pc_thunk_name (name, regno);
@ -8022,10 +8022,8 @@ ix86_code_end (void)
/* Make sure unwind info is emitted for the thunk if needed. */
final_start_function (emit_barrier (), asm_out_file, 1);
xops[0] = gen_rtx_REG (Pmode, regno);
xops[1] = gen_rtx_MEM (Pmode, stack_pointer_rtx);
/* Pad stack IP move with 4 instructions (two NOPs count
as one instruction.) */
as one instruction). */
if (TARGET_PAD_SHORT_FUNCTION)
{
int i = 8;
@ -8034,6 +8032,8 @@ ix86_code_end (void)
fputs ("\tnop\n", asm_out_file);
}
xops[0] = gen_rtx_REG (Pmode, regno);
xops[1] = gen_rtx_MEM (Pmode, stack_pointer_rtx);
output_asm_insn ("mov%z0\t{%1, %0|%0, %1}", xops);
fputs ("\tret\n", asm_out_file);
final_end_function ();

View File

@ -11515,7 +11515,7 @@
(unspec:SI [(const_int 0)] UNSPEC_SET_GOT))
(clobber (reg:CC FLAGS_REG))]
"!TARGET_64BIT"
{ return output_set_got (operands[0], NULL_RTX); }
"* return output_set_got (operands[0], NULL_RTX);"
[(set_attr "type" "multi")
(set_attr "length" "12")])
@ -11525,7 +11525,7 @@
UNSPEC_SET_GOT))
(clobber (reg:CC FLAGS_REG))]
"!TARGET_64BIT"
{ return output_set_got (operands[0], operands[1]); }
"* return output_set_got (operands[0], operands[1]);"
[(set_attr "type" "multi")
(set_attr "length" "12")])