mips.c (mips_va_arg): Apply big-endianness address offset before loading address of argument passed...
* config/mips/mips.c (mips_va_arg): Apply big-endianness address offset before loading address of argument passed by transparent reference. From-SVN: r50478
This commit is contained in:
parent
c51fbe40b3
commit
a85cd40702
|
@ -1,3 +1,9 @@
|
||||||
|
2002-03-09 Alexandre Oliva <aoliva@redhat.com>
|
||||||
|
|
||||||
|
* config/mips/mips.c (mips_va_arg): Apply big-endianness address
|
||||||
|
offset before loading address of argument passed by transparent
|
||||||
|
reference.
|
||||||
|
|
||||||
2002-03-08 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
2002-03-08 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||||||
|
|
||||||
* t-pa64 (LIB1ASMFUNCS, LIB1ASMSRC): Delete.
|
* t-pa64 (LIB1ASMFUNCS, LIB1ASMSRC): Delete.
|
||||||
|
|
|
@ -4726,17 +4726,17 @@ mips_va_arg (valist, type)
|
||||||
emit_queue();
|
emit_queue();
|
||||||
emit_label (lab_over);
|
emit_label (lab_over);
|
||||||
|
|
||||||
|
if (BYTES_BIG_ENDIAN && rsize != size)
|
||||||
|
addr_rtx = plus_constant (addr_rtx, rsize - size);
|
||||||
|
|
||||||
if (indirect)
|
if (indirect)
|
||||||
{
|
{
|
||||||
r = gen_rtx_MEM (Pmode, addr_rtx);
|
addr_rtx = force_reg (Pmode, addr_rtx);
|
||||||
|
r = gen_rtx_MEM (Pmode, addr_rtx);
|
||||||
set_mem_alias_set (r, get_varargs_alias_set ());
|
set_mem_alias_set (r, get_varargs_alias_set ());
|
||||||
emit_move_insn (addr_rtx, r);
|
emit_move_insn (addr_rtx, r);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
if (BYTES_BIG_ENDIAN && rsize != size)
|
|
||||||
addr_rtx = plus_constant (addr_rtx, rsize - size);
|
|
||||||
}
|
|
||||||
return addr_rtx;
|
return addr_rtx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue