2012-01-12 Pedro Alves <palves@redhat.com>
authorPedro Alves <palves@redhat.com>
Thu, 12 Jan 2012 15:39:36 +0000 (15:39 +0000)
committerPedro Alves <palves@redhat.com>
Thu, 12 Jan 2012 15:39:36 +0000 (15:39 +0000)
* i386-tdep.c (i386_frame_cache_1): Also mark the frame base as
available when %ebp is found to be zero (outermost).

gdb/ChangeLog
gdb/i386-tdep.c

index 2bef9ee42b844a99c58bd852142c9cdeccbabe42..289f967d9f692b55ac84eeb585bb17e842ca6745 100644 (file)
@@ -1,3 +1,8 @@
+2012-01-12  Pedro Alves  <palves@redhat.com>
+
+       * i386-tdep.c (i386_frame_cache_1): Also mark the frame base as
+       available when %ebp is found to be zero (outermost).
+
 2012-01-11  Andreas Tobler  <andreast@fgznet.ch>
 
        * common/gdb_assert.h (gdb_static_assert): Rename static_assert to
index a612ca6aa326a2538d8178e9a190cf04cb5e03b7..549297e701c9088336764ced85d21a4d6369261f 100644 (file)
@@ -1680,7 +1680,10 @@ i386_frame_cache_1 (struct frame_info *this_frame,
   get_frame_register (this_frame, I386_EBP_REGNUM, buf);
   cache->base = extract_unsigned_integer (buf, 4, byte_order);
   if (cache->base == 0)
-    return;
+    {
+      cache->base_p = 1;
+      return;
+    }
 
   /* For normal frames, %eip is stored at 4(%ebp).  */
   cache->saved_regs[I386_EIP_REGNUM] = 4;