From 87748e2b87e574d3c83866ccd0d83678c3c68d93 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Tue, 2 Feb 2010 13:47:19 +0100 Subject: Make sure cfa_ops are always retrieved through dwfl global address. dwflpp::translate_location() works on the dw address space, but get_cfa_ops() starts out with dwfl calls (only dwarf_cfi_addrframe() needs to be adjusted for bias). * dwflpp.cxx (translate_location): Pass pc plus module bias through to get_cfa_ops. (get_cfa_ops): Adjust for bias when calling dwarf_cfi_addrframe(), add frame start/end address when found if verbose logging. * testsuite/systemtap.exelib/lib.stp: Add $foo and $bar variables to process.function probes. * testsuite/systemtap.exelib/libmarkunamestack.stp: Likewise. * testsuite/systemtap.exelib/lib.tcl: Expect correct values for process.function probe variables. * testsuite/systemtap.exelib/libmarkunamestack.tcl: Likewise. --- testsuite/systemtap.exelib/lib.stp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'testsuite/systemtap.exelib/lib.stp') diff --git a/testsuite/systemtap.exelib/lib.stp b/testsuite/systemtap.exelib/lib.stp index 0151282e..3fdc6db9 100644 --- a/testsuite/systemtap.exelib/lib.stp +++ b/testsuite/systemtap.exelib/lib.stp @@ -6,7 +6,7 @@ probe process(@1).function("main") { } probe process(@1).function("main_func") { - printf("main_func\n"); + printf("main_func %d\n", $foo); } probe process(@2).function("lib_main") { @@ -14,5 +14,5 @@ probe process(@2).function("lib_main") { } probe process(@2).function("lib_func") { - printf("lib_func\n"); + printf("lib_func %d\n", $bar); } -- cgit