diff options
author | Mark Wielaard <mjw@redhat.com> | 2009-05-20 23:11:43 +0200 |
---|---|---|
committer | Mark Wielaard <mjw@redhat.com> | 2009-05-20 23:11:43 +0200 |
commit | 7872a5b9d76dc78d8956de3d2a11757783121674 (patch) | |
tree | ee310cda7b99a505f6b62770da91de291225c220 /translate.cxx | |
parent | 27b8459045b2276a8bb9ec5f8697cf2931291c4c (diff) | |
download | systemtap-steved-7872a5b9d76dc78d8956de3d2a11757783121674.tar.gz systemtap-steved-7872a5b9d76dc78d8956de3d2a11757783121674.tar.xz systemtap-steved-7872a5b9d76dc78d8956de3d2a11757783121674.zip |
Properly read eh_frame and pass is_ehframe correctly.
* runtime/unwind.c (adjustStartLoc): Add extra dbug_unwind.
(_stp_search_unwind_hdr): Always pass true for is_ehframe.
(unwind_frame): Properly pass through is_ehframe to adjustStartLoc().
(unwind): Add extra dbug_unwind.
* translate.cxx (dump_unwindsyms): Output and use correct eh_frame
and eh_len.
Diffstat (limited to 'translate.cxx')
-rw-r--r-- | translate.cxx | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/translate.cxx b/translate.cxx index eaa2e942..62c71aeb 100644 --- a/translate.cxx +++ b/translate.cxx @@ -4724,9 +4724,9 @@ dump_unwindsyms (Dwfl_Module *m, c->output << "static uint8_t _stp_module_" << stpmod_idx << "_eh_frame[] = \n"; c->output << " {"; - for (size_t i = 0; i < debug_len; i++) + for (size_t i = 0; i < eh_len; i++) { - int h = ((uint8_t *)debug_frame)[i]; + int h = ((uint8_t *)eh_frame)[i]; c->output << "0x" << hex << h << dec << ","; if ((i + 1) % 16 == 0) c->output << "\n" << " "; |