delve/pkg/dwarf
Derek Parker cac86b8791
dwarf/line: handle end_seq properly (#3277)
This patch changes how we handle end_seq in the debug_line state machine
program. Instead of always considering the state machine invalid at the
end_seq instead simply consider the *current* address invalid. This
solves a number of issues such as incorrect disassemble output for the
last few instructions in certain functions, and creating an eval scope
at an address within the last few instructions of certain functions. It
also handles the case where the end_seq address is the same as the start
address of the next adjacent function, which would previously confuse
Delve which is why we initially marked end_seq as invalid for the entire
state machine. This approach is more nuanced and still solves that
initial problem while fixing some problems introduced by that patch.
2023-02-20 10:36:09 +01:00
..
dwarfbuilder proc/dwarf: LEB128 encode/decode in separate pkg (#3235) 2023-01-10 12:29:58 -08:00
frame proc/dwarf: Move util functions to dwarf package (#3252) 2023-01-16 09:20:20 -08:00
godwarf godwarf: Allow extracting a DWARF entry's field (#3258) 2023-01-31 08:40:19 -08:00
leb128 proc/dwarf: LEB128 encode/decode in separate pkg (#3235) 2023-01-10 12:29:58 -08:00
line dwarf/line: handle end_seq properly (#3277) 2023-02-20 10:36:09 +01:00
loclist proc/dwarf: Move util functions to dwarf package (#3252) 2023-01-16 09:20:20 -08:00
op proc/dwarf: Move util functions to dwarf package (#3252) 2023-01-16 09:20:20 -08:00
reader proc: do not check return args when loading return vals of call injection 2021-10-02 15:44:30 +02:00
regnum dwarf: fix broken external url to arm dwarf mapping (#3272) 2023-02-14 16:34:34 +01:00
parseutil_test.go proc/dwarf: Move util functions to dwarf package (#3252) 2023-01-16 09:20:20 -08:00
parseutil.go proc/dwarf: Move util functions to dwarf package (#3252) 2023-01-16 09:20:20 -08:00