aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2001-07-24 16:28:36 +0000
committerAndrew Cagney <cagney@redhat.com>2001-07-24 16:28:36 +0000
commit675fb869a9ef875f8cff02be7f941d51b98fe44b (patch)
tree552d8d0239f0d37cf6de250a0e8052c84684e4a8 /gdb
parent067f20748083e4ab752331262c59b9e8e0b091ca (diff)
downloadgdb-675fb869a9ef875f8cff02be7f941d51b98fe44b.zip
gdb-675fb869a9ef875f8cff02be7f941d51b98fe44b.tar.gz
gdb-675fb869a9ef875f8cff02be7f941d51b98fe44b.tar.bz2
Doco LE O32 sizeof(struct) < 4 problem.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/mips-tdep.c15
2 files changed, 19 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 15eec29..2074eec 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2001-07-23 Andrew Cagney <ac131313@redhat.com>
+
+ * mips-tdep.c (mips_push_arguments): Add comment explaining
+ problem with LE o32 GCC.
+
2001-07-23 Elena Zannoni <ezannoni@redhat.com>
* config/powerpc/aix.mh (MH_LDFLAGS): Don't set these, the Gnu linker
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index d84223b..a6e06bb 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -2426,7 +2426,20 @@ mips_push_arguments (int nargs,
same for integral types.
Also don't do this adjustment on EABI and O64
- binaries. */
+ 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