This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA] Bugfixes on x86-64 target


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]