diff options
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/i386-tdep.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2bef9ee..289f967 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -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 diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index a612ca6..549297e 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -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; |