This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[patch] doco LE o32 problem
- To: gdb-patches at sources dot redhat dot com
- Subject: [patch] doco LE o32 problem
- From: Andrew Cagney <ac131313 at cygnus dot com>
- Date: Mon, 23 Jul 2001 16:22:23 -0400
FYI,
Per Elena's suggestion, I've both checked in the attached and created a PR.
Andrew
2001-07-23 Andrew Cagney <ac131313@redhat.com>
* mips-tdep.c (mips_push_arguments): Add comment explaining
problem with LE o32 GCC.
Index: mips-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/mips-tdep.c,v
retrieving revision 1.58
diff -p -r1.58 mips-tdep.c
*** mips-tdep.c 2001/07/15 20:10:02 1.58
--- mips-tdep.c 2001/07/23 20:19:42
*************** mips_push_arguments (int nargs,
*** 2426,2432 ****
same for integral types.
Also don't do this adjustment on EABI and O64
! binaries. */
if (!MIPS_EABI
&& MIPS_SAVED_REGSIZE < 8
--- 2426,2445 ----
same for integral types.
Also don't do this adjustment on EABI and O64
! binaries.
!
! cagney/2001-07-23: gdb/179: Also, GCC, when
! outputting LE O32 with sizeof (struct) <
! MIPS_SAVED_REGSIZE, generates a left shift as
! part of storing the argument in a register a
! register (the left shift isn't generated when
! sizeof (struct) >= MIPS_SAVED_REGSIZE). Since it
! is quite possible that this is GCC contradicting
! the LE/O32 ABI, GDB has not been adjusted to
! accommodate this. Either someone needs to
! demonstrate that the LE/O32 ABI specifies such a
! left shift OR this new ABI gets identified as
! such and GDB gets tweaked accordingly. */
if (!MIPS_EABI
&& MIPS_SAVED_REGSIZE < 8