summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alves <pedro@codesourcery.com>2012-01-12 15:48:45 +0000
committerPedro Alves <pedro@codesourcery.com>2012-01-12 15:48:45 +0000
commit7fba97594e0a1cfd2caad41aea44e595c5fea4a3 (patch)
tree6a30a6e07361672e09173539d519a089827c7a63
parent6b07b92c059fe1a72d9e7f472f789e171406aa73 (diff)
downloadgdb-7fba97594e0a1cfd2caad41aea44e595c5fea4a3.tar.gz
* i386-tdep.c (i386_frame_cache_1): Also mark the frame base as
available when %ebp is found to be zero (outermost).
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/i386-tdep.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 15733aed4c3..50e1391f17b 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-10 Doug Evans <dje@google.com>
* dwarf2read.c (dwarf_decode_lines): Remove arg "abfd". New arg
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index a612ca6aa32..549297e701c 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;