This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFA] Bugfixes on x86-64 target
- From: Michal Ludvig <mludvig at suse dot cz>
- To: gdb-patches at sources dot redhat dot com
- Date: Mon, 04 Mar 2002 12:06:59 +0100
- Subject: Re: [RFA] Bugfixes on x86-64 target
- Organization: SuSE CR
- References: <Pine.LNX.4.33.0202261827510.21868-100000@chimera.suse.cz> <3C7F9777.4070009@cygnus.com>
Andrew Cagney wrote:
> Michal,
> Can I suggest adding your self to the maintainers file as an obvious fix
> (don't forget to post the patch).
Index: ChangeLog
from Michal Ludvig <mludvig@suse.cz>
* MAINTAINERS (x86-64): Add myself.
Index: MAINTAINERS
===================================================================
RCS file: /cvs/src/src/gdb/MAINTAINERS,v
retrieving revision 1.154
diff -c -3 -p -r1.154 MAINTAINERS
*** MAINTAINERS 2002/03/01 03:30:59 1.154
--- MAINTAINERS 2002/03/04 10:54:48
*************** maintainer works with the native maintai
*** 171,177 ****
w65 Deleted.
x86-64 (--target=x86_64-linux-gnu broken)
! Maintenance only
xstormy16 --target=xstormy16-elf ,-Werror
Corinna Vinschen vinschen@redhat.com
--- 171,177 ----
w65 Deleted.
x86-64 (--target=x86_64-linux-gnu broken)
! Michal Ludvig mludvig@suse.cz
xstormy16 --target=xstormy16-elf ,-Werror
Corinna Vinschen vinschen@redhat.com
> You may also want to tweak x86-64 as it uses value_ptr which no longer
> exists.
>> + value_ptr arg = args[stack_values[stack_values_count]];
> ARI spotted it :-)
This was fixed in the second (corrected) posting of my patch.
Unfortunately you've commited the broken one :-(
Anyway, patch follows...
Index: ChangeLog
from Michal Ludvig <mludvig@suse.cz>
* x86-64-tdep.c (x86_64_push_arguments): Fixed typo naregs->nregs,
changed value_ptr -> struct value *
Index: x86-64-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/x86-64-tdep.c,v
retrieving revision 1.9
diff -c -3 -p -r1.9 x86-64-tdep.c
*** x86-64-tdep.c 2002/02/27 02:55:13 1.9
--- x86-64-tdep.c 2002/03/04 10:54:49
*************** x86_64_push_arguments (int nargs, struct
*** 569,575 ****
};
int stack_values_count = 0;
int *stack_values;
! stack_values = alloca (naregs * sizeof (int));
for (i = 0; i < nargs; i++)
{
enum x86_64_reg_class class[MAX_CLASSES];
--- 569,575 ----
};
int stack_values_count = 0;
int *stack_values;
! stack_values = alloca (nargs * sizeof (int));
for (i = 0; i < nargs; i++)
{
enum x86_64_reg_class class[MAX_CLASSES];
*************** x86_64_push_arguments (int nargs, struct
*** 639,645 ****
}
while (--stack_values_count >= 0)
{
! value_ptr arg = args[stack_values[stack_values_count]];
int len = TYPE_LENGTH (VALUE_ENCLOSING_TYPE (arg));
len += 7;
len -= len % 8;
--- 639,645 ----
}
while (--stack_values_count >= 0)
{
! struct value *arg = args[stack_values[stack_values_count]];
int len = TYPE_LENGTH (VALUE_ENCLOSING_TYPE (arg));
len += 7;
len -= len % 8;
Both patches are commited as obvious fixes.
Michal Ludvig
--
* SuSE CR, s.r.o * mludvig@suse.cz
* +420 2 9654 5373 * http://www.suse.cz