summaryrefslogtreecommitdiffstats
path: root/translate.cxx
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2009-05-20 23:11:43 +0200
committerMark Wielaard <mjw@redhat.com>2009-05-20 23:11:43 +0200
commit7872a5b9d76dc78d8956de3d2a11757783121674 (patch)
treeee310cda7b99a505f6b62770da91de291225c220 /translate.cxx
parent27b8459045b2276a8bb9ec5f8697cf2931291c4c (diff)
downloadsystemtap-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.cxx4
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" << " ";