mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-23 18:14:13 +08:00
2003-08-07 Michal Ludvig <mludvig@suse.cz>
* x86-64-tdep.c (x86_64_push_arguments): Skip the red zone.
This commit is contained in:
parent
9c5bfbb7fd
commit
fd83badabb
@ -1,5 +1,7 @@
|
||||
2003-08-07 Michal Ludvig <mludvig@suse.cz>
|
||||
|
||||
* x86-64-tdep.c (x86_64_dwarf_regmap): Correct register numbers.
|
||||
(x86_64_push_arguments): Skip the red zone.
|
||||
|
||||
2003-08-05 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
|
@ -613,6 +613,14 @@ x86_64_push_arguments (struct regcache *regcache, int nargs,
|
||||
int stack_values_count = 0;
|
||||
int *stack_values;
|
||||
stack_values = alloca (nargs * sizeof (int));
|
||||
|
||||
/* Before storing anything to the stack we must skip
|
||||
the "Red zone" (see the "Function calling sequence" section
|
||||
of AMD64 ABI).
|
||||
It could have already been skipped in the function's
|
||||
prologue, but we don't care and will easily skip it once again. */
|
||||
sp -= 128;
|
||||
|
||||
for (i = 0; i < nargs; i++)
|
||||
{
|
||||
enum x86_64_reg_class class[MAX_CLASSES];
|
||||
|
Loading…
Reference in New Issue
Block a user