summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@elastic.org>2008-11-28 20:22:41 -0500
committerFrank Ch. Eigler <fche@elastic.org>2008-11-28 20:22:41 -0500
commitb08d49f067a3ea84bc399855c669345b4e509d10 (patch)
tree8e2ac34790334bece53e352ed7d6006023f460ac
parent82762adc9d7e77cdce48a87a477a47fb9e14ecd9 (diff)
downloadsystemtap-steved-b08d49f067a3ea84bc399855c669345b4e509d10.tar.gz
systemtap-steved-b08d49f067a3ea84bc399855c669345b4e509d10.tar.xz
systemtap-steved-b08d49f067a3ea84bc399855c669345b4e509d10.zip
PR 6965: tweak symbol/unwind control macros to STP_NEED_{UNWIND,SYMBOL}_DATA
-rw-r--r--ChangeLog11
-rw-r--r--tapset/ChangeLog16
-rw-r--r--tapset/context-symbols.stp6
-rw-r--r--tapset/context-unwind.stp12
-rw-r--r--translate.cxx12
5 files changed, 37 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog
index eb256fd5..102cf733 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,13 +1,14 @@
+2008-11-28 Frank Ch. Eigler <fche@elastic.org>
+
+ PR 6965.
+ * translate.cxx (dump_unwindsyms): Tweak symbols for
+ STP_NEED_{SYMBOL,UNWIND}_DATA
+
2008-11-28 Elliott Baron <ebaron@redhat.com>
PR 6965.
* translate.cxx (dump_unwindsyms): Output #ifdef for
symbol table.
- * tapsets/context.stp: moved functions requiring symbols
- to tapsets/context-symbols.stp and those requiring both
- symbols and unwinder to tapsets/context-unwind.stp.
- * tapsets/context-symbols.h: New file.
- * tapsets/context-unwind.h: New file.
2008-11-28 Frank Ch. Eigler <fche@elastic.org>
diff --git a/tapset/ChangeLog b/tapset/ChangeLog
index 3ed69cbc..e372a7fa 100644
--- a/tapset/ChangeLog
+++ b/tapset/ChangeLog
@@ -1,4 +1,20 @@
+2008-11-28 Frank Ch. Eigler <fche@elastic.org>
+
+ PR 6965.
+ * context-{symbols,unwind}.h: Tweak control symbols to
+ STP_NEED_{SYMBOL,UNWIND}_DATA.
+
+2008-11-28 Elliott Baron <ebaron@redhat.com>
+
+ PR 6965.
+ * tapsets/context.stp: moved functions requiring symbols
+ to tapsets/context-symbols.stp and those requiring both
+ symbols and unwinder to tapsets/context-unwind.stp.
+ * tapsets/context-symbols.h: New file.
+ * tapsets/context-unwind.h: New file.
+
2008-11-26 Will Cohen <wcohen@redhat.com>
+
* scsi.stp: Add kernel-doc notation.
2008-11-26 Will Cohen <wcohen@redhat.com>
diff --git a/tapset/context-symbols.stp b/tapset/context-symbols.stp
index eb5a5014..79645f4f 100644
--- a/tapset/context-symbols.stp
+++ b/tapset/context-symbols.stp
@@ -1,5 +1,5 @@
// context-symbols tapset
-// Copyright (C) 2005, 2006, 2007 Red Hat Inc.
+// Copyright (C) 2005-2008 Red Hat Inc.
// Copyright (C) 2006 Intel Corporation.
//
// This file is part of systemtap, and is free software. You can
@@ -8,8 +8,8 @@
// later version.
%{
-#ifndef NEED_SYMBOL_DATA
-#define NEED_SYMBOL_DATA 1
+#ifndef STP_NEED_SYMBOL_DATA
+#define STP_NEED_SYMBOL_DATA 1
#endif
%}
diff --git a/tapset/context-unwind.stp b/tapset/context-unwind.stp
index c53de8f0..a0836ed6 100644
--- a/tapset/context-unwind.stp
+++ b/tapset/context-unwind.stp
@@ -1,5 +1,5 @@
// context-unwind tapset
-// Copyright (C) 2005, 2006, 2007 Red Hat Inc.
+// Copyright (C) 2005-2008 Red Hat Inc.
// Copyright (C) 2006 Intel Corporation.
//
// This file is part of systemtap, and is free software. You can
@@ -8,11 +8,11 @@
// later version.
%{
-#ifndef STP_USE_DWARF_UNWINDER
-#define STP_USE_DWARF_UNWINDER 1
+#ifndef STP_NEED_UNWIND_DATA
+#define STP_NEED_UNWIND_DATA 1
#endif
-#ifndef NEED_SYMBOL_DATA
-#define NEED_SYMBOL_DATA 1
+#ifndef STP_NEED_SYMBOL_DATA
+#define STP_NEED_SYMBOL_DATA 1
#endif
%}
@@ -68,4 +68,4 @@ function caller_addr:long () %{ /* pure */
THIS->__retvalue = (int64_t)(long)_stp_ret_addr_r(CONTEXT->pi);
else
THIS->__retvalue = 0;
-%} \ No newline at end of file
+%}
diff --git a/translate.cxx b/translate.cxx
index 8f47ca92..b90bb5ab 100644
--- a/translate.cxx
+++ b/translate.cxx
@@ -4571,7 +4571,7 @@ dump_unwindsyms (Dwfl_Module *m,
void *unwind = get_unwind_data (m, &len);
if (unwind != NULL)
{
- c->output << "#ifdef STP_USE_DWARF_UNWINDER" << endl;
+ c->output << "#if defined(STP_USE_DWARF_UNWINDER) && defined(STP_NEED_UNWIND_DATA)" << endl;
c->output << "static uint8_t _stp_module_" << stpmod_idx
<< "_unwind_data[] = " << endl;
c->output << " {";
@@ -4583,7 +4583,7 @@ dump_unwindsyms (Dwfl_Module *m,
c->output << endl << " ";
}
c->output << "};" << endl;
- c->output << "#endif /* STP_USE_DWARF_UNWINDER */" << endl;
+ c->output << "#endif /* STP_USE_DWARF_UNWINDER && STP_NEED_UNWIND_DATA */" << endl;
}
else
{
@@ -4602,7 +4602,7 @@ dump_unwindsyms (Dwfl_Module *m,
<< "_stp_module_" << stpmod_idx<< "_symbols_" << secidx << "[] = {" << endl;
// Only include symbols if they will be used
- c->output << "#ifdef NEED_SYMBOL_DATA" << endl;
+ c->output << "#ifdef STP_NEED_SYMBOL_DATA" << endl;
// We write out a *sorted* symbol table, so the runtime doesn't have to sort them later.
for (addrmap_t::iterator it = addrmap[secidx].begin(); it != addrmap[secidx].end(); it++)
@@ -4614,7 +4614,7 @@ dump_unwindsyms (Dwfl_Module *m,
<< ", " << lex_cast_qstring (it->second) << " }," << endl;
}
- c->output << "#endif" << endl;
+ c->output << "#endif /* STP_NEED_SYMBOL_DATA */" << endl;
c->output << "};" << endl;
}
@@ -4636,7 +4636,7 @@ dump_unwindsyms (Dwfl_Module *m,
if (unwind != NULL)
{
- c->output << "#ifdef STP_USE_DWARF_UNWINDER" << endl;
+ c->output << "#if defined(STP_USE_DWARF_UNWINDER) && defined(STP_NEED_UNWIND_DATA)" << endl;
c->output << ".unwind_data = "
<< "_stp_module_" << stpmod_idx << "_unwind_data, " << endl;
c->output << ".unwind_data_len = " << len << ", " << endl;
@@ -4647,7 +4647,7 @@ dump_unwindsyms (Dwfl_Module *m,
c->output << ".unwind_data_len = 0, " << endl;
if (unwind != NULL)
- c->output << "#endif /* STP_USE_DWARF_UNWINDER */" << endl;
+ c->output << "#endif /* STP_USE_DWARF_UNWINDER && STP_NEED_UNWIND_DATA*/" << endl;
c->output << ".unwind_hdr = NULL, " << endl;
c->output << ".unwind_hdr_len = 0, " << endl;