* i386-tdep.c (i386_stab_reg_to_regnum): Correct numbering for
authorJim Blandy <jimb@codesourcery.com>
Wed, 7 Apr 2004 16:45:45 +0000 (16:45 +0000)
committerJim Blandy <jimb@codesourcery.com>
Wed, 7 Apr 2004 16:45:45 +0000 (16:45 +0000)
%esp and %ebp

gdb/ChangeLog
gdb/i386-tdep.c

index 7cc00a8d693d7dfb8377374c8043b352b181edcb..9129b7da4f376f23d48735b03d2247d45d494e94 100644 (file)
@@ -1,3 +1,8 @@
+2004-04-07  Jim Blandy  <jimb@redhat.com>
+
+       * i386-tdep.c (i386_stab_reg_to_regnum): Correct numbering for
+       %esp and %ebp
+
 2004-04-07  Mark Kettenis  <kettenis@gnu.org>
 
        * config/sparc/linux.mt (TDEPFILES): Remove solib-legacy.o.
index b3a27931a9376e1f44f129fc47e3a758afdf2f3c..cfe426d3a01c6a9ea237786fc9af3914dc5c7351 100644 (file)
@@ -211,8 +211,13 @@ i386_stab_reg_to_regnum (int reg)
   /* This implements what GCC calls the "default" register map.  */
   if (reg >= 0 && reg <= 7)
     {
-      /* General-purpose registers.  */
-      return reg;
+      /* General-purpose registers.  The debug info calls %ebp
+         register 4, and %esp register 5.  */
+      if (reg == 4)
+        return 5;
+      else if (reg == 5)
+        return 4;
+      else return reg;
     }
   else if (reg >= 12 && reg <= 19)
     {