diff options
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | tapset/ChangeLog | 16 | ||||
-rw-r--r-- | tapset/context-symbols.stp | 6 | ||||
-rw-r--r-- | tapset/context-unwind.stp | 12 | ||||
-rw-r--r-- | translate.cxx | 12 |
5 files changed, 37 insertions, 20 deletions
@@ -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; |