Make sure to subtract one from the PC when doing the symbolication of stack frames when it isn't the zero'th frame.

llvm-svn: 156974
This commit is contained in:
Greg Clayton 2012-05-17 03:58:23 +00:00
parent b273b74373
commit f67002dd4c
1 changed files with 6 additions and 1 deletions

View File

@ -556,7 +556,12 @@ be disassembled and lookups can be performed using the addresses found in the cr
#prev_frame_index = -1
for frame_idx, frame in enumerate(thread.frames):
disassemble = (this_thread_crashed or options.disassemble_all_threads) and frame_idx < options.disassemble_depth;
symbolicated_frame_addresses = crash_log.symbolicate (frame.pc)
if frame_idx == 0:
symbolicated_frame_addresses = crash_log.symbolicate (frame.pc)
else:
# Any frame above frame zero and we have to subtract one to get the previous line entry
symbolicated_frame_addresses = crash_log.symbolicate (frame.pc - 1)
if symbolicated_frame_addresses:
symbolicated_frame_address_idx = 0
for symbolicated_frame_address in symbolicated_frame_addresses: