diff options
author | Doug Moore <dougm@rice.edu> | 2017-05-19 17:59:08 -0500 |
---|---|---|
committer | Doug Moore <dougm@rice.edu> | 2017-05-19 17:59:08 -0500 |
commit | 7634874591d0aa63c72047bfa401ae009234072d (patch) | |
tree | 8e88b6500ab2250df18ff91c94154a922ef84611 /src/dwarf/Gparser.c | |
parent | ec1a0212430fbb2a6e51111b6bfcdb0a5a75c98d (diff) | |
download | libunwind-7634874591d0aa63c72047bfa401ae009234072d.tar.gz |
Move the change to c->ret_addr_column to the end of dwarf_step, to make sure
that it gets set in the cache hit case.
Diffstat (limited to 'src/dwarf/Gparser.c')
-rw-r--r-- | src/dwarf/Gparser.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dwarf/Gparser.c b/src/dwarf/Gparser.c index 2600ce39..698dd49a 100644 --- a/src/dwarf/Gparser.c +++ b/src/dwarf/Gparser.c @@ -516,7 +516,6 @@ setup_fde (struct dwarf_cursor *c, dwarf_state_record_t *sr) set_reg (sr, i, DWARF_WHERE_SAME, 0); struct dwarf_cie_info *dci = c->pi.unwind_info; - c->ret_addr_column = dci->ret_addr_column; sr->rs_current.ret_addr_column = dci->ret_addr_column; unw_word_t addr = dci->cie_instr_start; unw_word_t curr_ip = 0; @@ -942,6 +941,7 @@ dwarf_step (struct dwarf_cursor *c) return ret; if ((ret = apply_reg_state (c, &sr.rs_current)) < 0) return ret; + c->ret_addr_column = sr.rs_current.ret_addr_column; return 1; } |