This is the mail archive of the gdb-patches@sourceware.org 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]

Patch for GDB rs6000-tdep.c


The attached is a patch for the file gdb-6.4/gdb/rs6000-tdep.c.

The problem: The register definitions for the e500 assume only 4 bytes per floating-point register but the gdbserver assumes 8 bytes per floating-point register.

Changelog
rs6000-tdep.c (registers_e500[]): Use COMMON_UISA_REGS to define general purpose, floating-point, pc, and ps registers.


*** rs6000-tdep.c	2005-11-01 12:32:36.000000000 -0700
--- rs6000-tdep.c.new	2006-05-17 11:28:45.526751000 -0600
*************** static const struct reg registers_7400[]
*** 2629,2637 ****
  /* Motorola e500.  */
  static const struct reg registers_e500[] =
  {
!   /*   0 ..  31 */ PPC_SPE_GP_REGS,
!   /*  32 ..  63 */ PPC_SPE_UPPER_GP_REGS,
!   /*  64 ..  65 */ R(pc), R(ps),
    /*  66 ..  70 */ PPC_UISA_NOFP_SPRS,
    /*  71 ..  72 */ R8(acc), S4(spefscr),
    /* NOTE: Add new registers here the end of the raw register
--- 2629,2635 ----
  /* Motorola e500.  */
  static const struct reg registers_e500[] =
  {
!   /* 0 .. 65 */ COMMON_UISA_REGS,
    /*  66 ..  70 */ PPC_UISA_NOFP_SPRS,
    /*  71 ..  72 */ R8(acc), S4(spefscr),
    /* NOTE: Add new registers here the end of the raw register

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