summaryrefslogtreecommitdiffstats
path: root/tapsets.cxx
diff options
context:
space:
mode:
authorStan Cox <scox@redhat.com>2008-12-21 22:48:38 -0500
committerStan Cox <scox@redhat.com>2008-12-21 22:48:38 -0500
commita688cff28de458448f40584acfa5f22d7e444471 (patch)
tree803c493e0849ace6a347ceb9feeaefc5a88a0ee2 /tapsets.cxx
parent5fab0487aa45893289ad9a688a513eb7925f5133 (diff)
downloadsystemtap-steved-a688cff28de458448f40584acfa5f22d7e444471.tar.gz
systemtap-steved-a688cff28de458448f40584acfa5f22d7e444471.tar.xz
systemtap-steved-a688cff28de458448f40584acfa5f22d7e444471.zip
Put a block around the probe point.
Diffstat (limited to 'tapsets.cxx')
-rw-r--r--tapsets.cxx9
1 files changed, 4 insertions, 5 deletions
diff --git a/tapsets.cxx b/tapsets.cxx
index 0efaf455..20bea45d 100644
--- a/tapsets.cxx
+++ b/tapsets.cxx
@@ -1578,8 +1578,9 @@ struct dwflpp
bool die_has_pc (Dwarf_Die & die, Dwarf_Addr pc)
{
int res = dwarf_haspc (&die, pc);
- if (res == -1)
- dwarf_assert ("dwarf_haspc", res);
+ // dwarf_ranges will return -1 if a function die has no DW_AT_ranges
+ // if (res == -1)
+ // dwarf_assert ("dwarf_haspc", res);
return res == 1;
}
@@ -1708,7 +1709,7 @@ struct dwflpp
assert (cu);
- if (scope_die)
+ if (scope_die && pc == 0)
nscopes = dwarf_getscopes_die (scope_die, &scopes);
else
nscopes = dwarf_getscopes (cu, pc, &scopes);
@@ -5387,8 +5388,6 @@ dwarf_builder::build(systemtap_session & sess,
Dwarf_Die *cudie = dwarf_offdie (dwarf, off + cuhl, &cudie_mem);
if (cudie == NULL)
continue;
- if (0)
- printf("2 diename=%s module_name=%s probe_type=%d probe_arg=%#Lx\n",dwarf_diename(&cudie_mem),module_name.c_str(), (int)probe_type, (long long)probe_arg);
if (probe_type == no_debuginfo)
{
if (strncmp (dwarf_diename(&cudie_mem), "sduprobes", 9) == 0)