[prev in list] [next in list] [prev in thread] [next in thread]
List: gdb-patches
Subject: [PATCH 0/2] Fix "info frame" in the outermost frame.
From: palves () redhat ! com (Pedro Alves)
Date: 2013-11-29 20:16:00
Message-ID: 1385756149-534-1-git-send-email-palves () redhat ! com
[Download RAW message or body]
Doing "info frame" in the outermost frame, when that was indicated by
the next frame saying the unwound PC is undefined/not saved, results
in error and incomplete output:
(gdb) bt
#0 thread_function0 (arg=0x0) at threads.c:63
#1 0x00000034cf407d14 in start_thread (arg=0x7ffff7fcb700) at pthread_create.c:309
#2 0x000000323d4f168d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115
(gdb) frame 2
#2 0x000000323d4f168d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115
115 call *%rax
(gdb) info frame
Stack level 2, frame at 0x0:
rip = 0x323d4f168d in clone (../sysdeps/unix/sysv/linux/x86_64/clone.S:115); saved \
rip Register 16 was not saved (gdb)
This mini-series fixes it. Afterwards, we get:
(gdb) info frame
Stack level 2, frame at 0x0:
rip = 0x323d4f168d in clone (../sysdeps/unix/sysv/linux/x86_64/clone.S:115); saved \
rip = <not saved> Outermost frame: outermost
caller of frame at 0x7ffff7fcafc0
source language asm.
Arglist at 0x7ffff7fcafb8, args:
Locals at 0x7ffff7fcafb8, Previous frame's sp is 0x7ffff7fcafc8
(gdb)
Pedro Alves (2):
New OPTIMIZED_OUT_ERROR error code.
Fix "info frame" in the outermost frame.
gdb/dwarf2loc.c | 7 +-
gdb/exceptions.h | 4 +
gdb/frame.c | 111 +++--
gdb/frame.h | 8 -
gdb/spu-tdep.c | 5 +-
gdb/stack.c | 27 +-
gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.S | 508 +++++++++++++++++++++
gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.c | 36 ++
.../gdb.dwarf2/dw2-undefined-ret-addr.exp | 58 +++
gdb/valops.c | 3 +-
gdb/valprint.c | 8 +-
gdb/valprint.h | 3 +
12 files changed, 712 insertions(+), 66 deletions(-)
create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.S
create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.c
create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.exp
--
1.7.11.7
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic