* alpha-tdep.c (alpha_push_dummy_call): Store sp. Tidy copies

from arg_reg_buffer to regcache to avoid double conversion.
This commit is contained in:
Richard Henderson 2003-06-01 18:42:30 +00:00
parent c7f1635919
commit 09cc52fd98
2 changed files with 12 additions and 6 deletions

View File

@ -1,3 +1,8 @@
2003-06-01 Richard Henderson <rth@redhat.com>
* alpha-tdep.c (alpha_push_dummy_call): Store sp. Tidy copies
from arg_reg_buffer to regcache to avoid double conversion.
2003-06-01 Mark Kettenis <kettenis@gnu.org>
* i386-linux-nat.c (child_resume): Use I386_ESP_REGNUM instead of

View File

@ -314,14 +314,15 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
/* Load the argument registers. */
for (i = 0; i < required_arg_regs; i++)
{
LONGEST val;
val = extract_unsigned_integer (arg_reg_buffer + i*ALPHA_REGISTER_SIZE,
ALPHA_REGISTER_SIZE);
regcache_cooked_write_signed (regcache, ALPHA_A0_REGNUM + i, val);
regcache_cooked_write_signed (regcache, ALPHA_FPA0_REGNUM + i, val);
regcache_cooked_write (regcache, ALPHA_A0_REGNUM + i,
arg_reg_buffer + i*ALPHA_REGISTER_SIZE);
regcache_cooked_write (regcache, ALPHA_FPA0_REGNUM + i,
arg_reg_buffer + i*ALPHA_REGISTER_SIZE);
}
/* Finally, update the stack pointer. */
regcache_cooked_write_signed (regcache, ALPHA_SP_REGNUM, sp);
return sp;
}