dyninst.git
24 years agoTidied
wylie [Wed, 22 Apr 1998 16:21:47 +0000 (16:21 +0000)]
Tidied

24 years agoMoved showerror.h from paradynd directory to dyninstAPI directory.
buck [Wed, 22 Apr 1998 02:37:24 +0000 (02:37 +0000)]
Moved showerror.h from paradynd directory to dyninstAPI directory.

24 years agoMoved showerror.h from paradynd directory to dyninstAPI directory.
buck [Wed, 22 Apr 1998 02:30:09 +0000 (02:30 +0000)]
Moved showerror.h from paradynd directory to dyninstAPI directory.

24 years agoFix bugs in the Dyninst API:
buck [Tue, 21 Apr 1998 22:56:53 +0000 (22:56 +0000)]
Fix bugs in the Dyninst API:
Detaching from a process on Solaris no longer causes the
process to die.
Using BPatch_thread::terminateProc on a stopped process
no longer causes the mutator to hang.

24 years agoRemoved safety check freom last commit.
mcheyney [Mon, 20 Apr 1998 20:14:48 +0000 (20:14 +0000)]
Removed safety check freom last commit.
Current SPARC instrumentation does not correctly handle
 jmp, nop sequence in middle of function with no stack frame,
 which may be tail-call optimization.
Last commit included a change to mark such functions as
 uninstrumentable, this commit makes the functions instrumentable
 again for the coming release.
Note that the current handling of such functions is NOT a safe
 long-term solution.

24 years agoFixed bug carlos found with handling of mangled names.
mcheyney [Fri, 10 Apr 1998 18:11:18 +0000 (18:11 +0000)]
Fixed bug carlos found with handling of mangled names.

Previous algorithm :
  check if name matches known de-mangled name.
  if not, de-mangle it + try again.

This doesn't handle the case where multiple functions w/ different
mangled names have same de-mangled name.

New Algorithm:
  check if name matches known de-mangled name.
  check if name matches known mangled name.

24 years agoChanges to support instrumentation of optimizd code sequences
mcheyney [Fri, 10 Apr 1998 18:08:12 +0000 (18:08 +0000)]
Changes to support instrumentation of optimizd code sequences
found on Solaris 2.6.
Support for:
 jmp, nop at end of fn w/ no stack frame - tail-call optimization
  detected + (hopefully) unwound.
 jmp, nop inside fn w/ no stack frame - possible TC optimization, marked
  as uninstrumentable to be safe.

24 years agoscript path correction
wylie [Thu, 9 Apr 1998 14:16:05 +0000 (14:16 +0000)]
script path correction

24 years agoRelative reference to scripts (rather than hardcoded full path).
wylie [Tue, 7 Apr 1998 22:36:39 +0000 (22:36 +0000)]
Relative reference to scripts (rather than hardcoded full path).
Check for local make configuration files to be included at end.

24 years agoRelative reference to scripts (rather than hardcoded full path)
wylie [Tue, 7 Apr 1998 22:35:36 +0000 (22:35 +0000)]
Relative reference to scripts (rather than hardcoded full path)

24 years agoRemoved some dependencies on files in paradynd directory when we
buck [Tue, 7 Apr 1998 21:42:01 +0000 (21:42 +0000)]
Removed some dependencies on files in paradynd directory when we
compile with BPATCH_LIBRARY.

24 years agoRemoved C++-style comments from .c files.
buck [Tue, 7 Apr 1998 18:41:13 +0000 (18:41 +0000)]
Removed C++-style comments from .c files.

24 years agoRemoved obsolete PVM reference
wylie [Mon, 6 Apr 1998 04:48:23 +0000 (04:48 +0000)]
Removed obsolete PVM reference

24 years agoBasic Ident info.
wylie [Mon, 6 Apr 1998 04:26:52 +0000 (04:26 +0000)]
Basic Ident info.

24 years agoEnsure "Application status" follows "Application name" status line in UI.
wylie [Mon, 6 Apr 1998 04:23:52 +0000 (04:23 +0000)]
Ensure "Application status" follows "Application name" status line in UI.

24 years agoChanged uname to "wrapped" getHostName
wylie [Mon, 6 Apr 1998 04:22:37 +0000 (04:22 +0000)]
Changed uname to "wrapped" getHostName

24 years agoAdded Ident.C build identifier class
wylie [Mon, 6 Apr 1998 04:16:26 +0000 (04:16 +0000)]
Added Ident.C build identifier class

24 years agoBuild identifier class
wylie [Mon, 6 Apr 1998 04:15:26 +0000 (04:15 +0000)]
Build identifier class

24 years agoMoved from core to core/tclStuff
wylie [Fri, 3 Apr 1998 22:54:38 +0000 (22:54 +0000)]
Moved from core to core/tclStuff

24 years agoMoved from core to scripts
wylie [Fri, 3 Apr 1998 22:41:01 +0000 (22:41 +0000)]
Moved from core to scripts

24 years agoFixing isReturnInsn - naim
naim [Fri, 3 Apr 1998 17:34:28 +0000 (17:34 +0000)]
Fixing isReturnInsn - naim

24 years agoRe-located buildstamp in separate scripts directory.
wylie [Fri, 3 Apr 1998 04:03:21 +0000 (04:03 +0000)]
Re-located buildstamp in separate scripts directory.
Expanded/reorganized configuration guidelines.

24 years agoAdded "Paradyn" make target for dynInstAPI-less build, to match existing
wylie [Fri, 3 Apr 1998 03:57:28 +0000 (03:57 +0000)]
Added "Paradyn" make target for dynInstAPI-less build, to match existing
"dynInstAPI" make target for Paradyn-less build, for extra convenience.
Simplified and expanded documentation.

24 years agoRe-located buildstamp in separate scripts directory.
wylie [Fri, 3 Apr 1998 03:52:56 +0000 (03:52 +0000)]
Re-located buildstamp in separate scripts directory.
Expanded/reorganized configuration guidelines.

24 years agoRemoval of obsolete PVM remnants.
wylie [Fri, 3 Apr 1998 02:18:31 +0000 (02:18 +0000)]
Removal of obsolete PVM remnants.

24 years agoUnterminated echo string typo (caught by gmake 3.75)
wylie [Thu, 2 Apr 1998 18:42:58 +0000 (18:42 +0000)]
Unterminated echo string typo (caught by gmake 3.75)

24 years agoChanged INCLUDE_PVM_SUPPORT default to true.
wylie [Thu, 2 Apr 1998 01:24:37 +0000 (01:24 +0000)]
Changed INCLUDE_PVM_SUPPORT default to true.

24 years agoCorrected "mpi" code that assumes PARADYND_PVM is always defined.
ssuen [Wed, 1 Apr 1998 21:23:25 +0000 (21:23 +0000)]
Corrected "mpi" code that assumes PARADYND_PVM is always defined.

24 years agoRestructuring of build for greater flexibility and easier control.
wylie [Wed, 1 Apr 1998 02:59:47 +0000 (02:59 +0000)]
Restructuring of build for greater flexibility and easier control.
Parameterization at toplevel of build configuration options,
including conditional build with/without including PVM support.
Incorporation of Paradyn/DynInstAPI build voucher information.

24 years agoParameterization of "toplevel" definitions.
wylie [Wed, 1 Apr 1998 02:54:01 +0000 (02:54 +0000)]
Parameterization of "toplevel" definitions.
Additional definition of USES_X11 for SP2 platform.

24 years agoParameterization of "toplevel" definitions.
wylie [Wed, 1 Apr 1998 02:51:50 +0000 (02:51 +0000)]
Parameterization of "toplevel" definitions.

24 years agoParameterization of "toplevel" definitions.
wylie [Wed, 1 Apr 1998 02:50:01 +0000 (02:50 +0000)]
Parameterization of "toplevel" definitions.
Conditional build with/without PVM support.

24 years agoCosmetica
wylie [Wed, 1 Apr 1998 02:48:33 +0000 (02:48 +0000)]
Cosmetica

24 years agoParameterization of "toplevel" definitions.
wylie [Wed, 1 Apr 1998 02:43:20 +0000 (02:43 +0000)]
Parameterization of "toplevel" definitions.
Additional definition of USES_X11 for SP2 platform.

24 years agoCosmetica
wylie [Wed, 1 Apr 1998 02:36:32 +0000 (02:36 +0000)]
Cosmetica

24 years agoRestructuring for greater homogeneity and support for conditional builds
wylie [Wed, 1 Apr 1998 02:33:04 +0000 (02:33 +0000)]
Restructuring for greater homogeneity and support for conditional builds
(and installs) of libdyninstCP and DYNINSTstart/endCode as desired/required.
Parameterization of "toplevel" definitions.
Incorporation of build voucher information.

24 years agoCosmetica
wylie [Wed, 1 Apr 1998 02:27:11 +0000 (02:27 +0000)]
Cosmetica

24 years agoParameterization of "toplevel" definitions.
wylie [Wed, 1 Apr 1998 02:23:19 +0000 (02:23 +0000)]
Parameterization of "toplevel" definitions.
Incorporation of build voucher information.

24 years agoCosmetica
wylie [Wed, 1 Apr 1998 02:19:08 +0000 (02:19 +0000)]
Cosmetica

24 years agoRestructuring to enable reasonable "install".
wylie [Wed, 1 Apr 1998 02:18:28 +0000 (02:18 +0000)]
Restructuring to enable reasonable "install".
Parameterization of "toplevel" definitions.

24 years agoAdded some code to keep the compiler happy
wylie [Wed, 1 Apr 1998 02:16:13 +0000 (02:16 +0000)]
Added some code to keep the compiler happy

24 years agoAdded dyninstAPI tests to build
wylie [Wed, 1 Apr 1998 01:30:08 +0000 (01:30 +0000)]
Added dyninstAPI tests to build

24 years agoIncremented Igen-interface version identifiers (to manage previous changes)
wylie [Wed, 1 Apr 1998 01:27:56 +0000 (01:27 +0000)]
Incremented Igen-interface version identifiers (to manage previous changes)

24 years agoRemoved C++-style "//" comments to allow C sources to be built with C compilers.
wylie [Mon, 30 Mar 1998 01:21:59 +0000 (01:21 +0000)]
Removed C++-style "//" comments to allow C sources to be built with C compilers.

24 years agoMinor change to error message - naim
naim [Fri, 27 Mar 1998 16:53:03 +0000 (16:53 +0000)]
Minor change to error message - naim

24 years agoRemoving assertion failure from updateValue - naim
naim [Fri, 27 Mar 1998 16:43:29 +0000 (16:43 +0000)]
Removing assertion failure from updateValue - naim

24 years agoFixed some problems with compiling recently added API functions under
buck [Fri, 27 Mar 1998 01:31:08 +0000 (01:31 +0000)]
Fixed some problems with compiling recently added API functions under
Windows NT.

24 years agoAdding error message if we can't instrument main - naim
naim [Thu, 26 Mar 1998 16:30:01 +0000 (16:30 +0000)]
Adding error message if we can't instrument main - naim

24 years agoHandles restartable writes in sampling code to paradynd.
ssuen [Thu, 26 Mar 1998 09:22:46 +0000 (09:22 +0000)]
Handles restartable writes in sampling code to paradynd.

24 years agoFixed maintaining of invariant: assert(bins.size() * max_bin_load >= size())
ssuen [Thu, 26 Mar 1998 09:20:02 +0000 (09:20 +0000)]
Fixed maintaining of invariant:  assert(bins.size() * max_bin_load >= size())

24 years agoIn mdl_v_expr::apply(), move the handling of $return from MDL_EXPR_STRING to
czhang [Thu, 26 Mar 1998 07:14:34 +0000 (07:14 +0000)]
In mdl_v_expr::apply(), move the handling of $return from MDL_EXPR_STRING to
MDL_EXPR_VAR.

24 years agoIn mdl_v_expr::apply(), check for (var_=="$return") in the case of
czhang [Thu, 26 Mar 1998 07:12:20 +0000 (07:12 +0000)]
In mdl_v_expr::apply(), check for (var_=="$return") in the case of
MDL_EXPR_VAR.

24 years agoAdded a rule of tRETURN for metric_expr.
czhang [Thu, 26 Mar 1998 07:11:09 +0000 (07:11 +0000)]
Added a rule of tRETURN for metric_expr.

24 years agoAdded BPatch_thread::oneTimeCode, BPatch_thread::loadLibrary, and other
buck [Thu, 26 Mar 1998 01:06:42 +0000 (01:06 +0000)]
Added BPatch_thread::oneTimeCode, BPatch_thread::loadLibrary, and other
minor features to the Dyninst API.

24 years agoWorkaround for VC++'s inability to correctly scope iterator variable
wylie [Thu, 19 Mar 1998 19:02:46 +0000 (19:02 +0000)]
Workaround for VC++'s inability to correctly scope iterator variable
definitions.

24 years agoChanges to reduce the number of unnecessary calls to continueProc, improving
naim [Thu, 12 Mar 1998 22:35:55 +0000 (22:35 +0000)]
Changes to reduce the number of unnecessary calls to continueProc, improving
performance both when enabling and disabling metrics - naim

24 years agoRemoving option to generate a core dump - naim
naim [Wed, 11 Mar 1998 18:33:13 +0000 (18:33 +0000)]
Removing option to generate a core dump - naim

24 years agoMoved instrumentation stack storage further down the stack to avoid
ssuen [Wed, 11 Mar 1998 09:33:29 +0000 (09:33 +0000)]
Moved instrumentation stack storage further down the stack to avoid
colliding with application codes' stack usage.

24 years agoFixed some bugs in parsing NT executables.
buck [Fri, 6 Mar 1998 21:35:37 +0000 (21:35 +0000)]
Fixed some bugs in parsing NT executables.
Made changes to work with gcc-built programs on NT.

24 years agoMoved vector<FERNode> template instantiation to dyninstAPI/src/templates0.C
buck [Fri, 6 Mar 1998 21:35:05 +0000 (21:35 +0000)]
Moved vector<FERNode> template instantiation to dyninstAPI/src/templates0.C

24 years agoAdded several calls to API (waitForStatusChange, BPatch_variableExpr
buck [Fri, 6 Mar 1998 21:32:11 +0000 (21:32 +0000)]
Added several calls to API (waitForStatusChange, BPatch_variableExpr
member functions getBaseAddr and readValue, writeValue with an extra
length parameter).
Fixed several bugs in x86 instrumentation code related to parsing jump
tables.
Made changes to work with gcc-built programs on NT.

24 years agoFixing wayward constness and general tidy-up.
wylie [Wed, 4 Mar 1998 19:56:10 +0000 (19:56 +0000)]
Fixing wayward constness and general tidy-up.

24 years agoModified process status handling to provide appropriate tag
wylie [Wed, 4 Mar 1998 19:53:04 +0000 (19:53 +0000)]
Modified process status handling to provide appropriate tag
(so that process status messages can be routed to a separate display area)

24 years agoAdded scrollable process status window to main window display.
wylie [Wed, 4 Mar 1998 19:50:38 +0000 (19:50 +0000)]
Added scrollable process status window to main window display.
Also X->Tk font sanitization.

24 years agoRevised interface to tcl for additional information display functions and
wylie [Tue, 3 Mar 1998 23:40:26 +0000 (23:40 +0000)]
Revised interface to tcl for additional information display functions and
modifided display/printDaemonStartInfo().

24 years agoRenamed printDaemonStartInfo() to displayDaemonStartInfo().
wylie [Tue, 3 Mar 1998 23:38:26 +0000 (23:38 +0000)]
Renamed printDaemonStartInfo() to displayDaemonStartInfo().
New printDaemonStartInfo(filename) attempts to write same paradynd start-up
information to given filename (though it tries not to overwrite an existing
non-paradynd start-up file if provided mistakenly).
Also added some additional information display functions.

24 years agoAdded "-x <connect_file>" option for remote/manual paradynd start-up
wylie [Tue, 3 Mar 1998 23:35:00 +0000 (23:35 +0000)]
Added "-x <connect_file>" option for remote/manual paradynd start-up
(aka "Globus" support).

24 years agoGeneral tidy-up.
wylie [Tue, 3 Mar 1998 23:28:58 +0000 (23:28 +0000)]
General tidy-up.

24 years agoAdded interface specifications for additional information display functions
wylie [Tue, 3 Mar 1998 23:28:18 +0000 (23:28 +0000)]
Added interface specifications for additional information display functions
and revised printDaemonStartInfo() to displayDaemonStartInfo() with new
printDaemonStartInfo(const char *filename) for printing connect output to file.

24 years agoInformational messages (as typed in errorList.tcl) are now presented in a
wylie [Tue, 3 Mar 1998 23:20:08 +0000 (23:20 +0000)]
Informational messages (as typed in errorList.tcl) are now presented in a
non-modal dialog with a simple OK to close, though they (perhaps curiously)
remain handled by the same error-handling/typing/numbering mechanism.
Also X->Tk font sanitization.

24 years agoBased on the observation that the "information" error type generally
wylie [Tue, 3 Mar 1998 23:17:10 +0000 (23:17 +0000)]
Based on the observation that the "information" error type generally
doesn't actually correspond to an error at all, but rather an informational
message, many former "information" messages have been re-typed as "warning"s.
Informational messages should be (and now will be) presented in a non-modal
dialog with a simple OK to close, though they (perhaps curiously) remain
handled by the same error-handling/typing/numbering mechanism.

Some additional messages (mostly informational) have also been added, as
well as a general re-format of the messages.

24 years agoX->Tk font sanitization
wylie [Tue, 3 Mar 1998 23:09:44 +0000 (23:09 +0000)]
X->Tk font sanitization

24 years agoadded support for parsing stripped shared object files, and stripped dynamic
newhall [Tue, 3 Mar 1998 18:35:17 +0000 (18:35 +0000)]
added support for parsing stripped shared object files, and stripped dynamic
executable files

24 years agoFixed AIX problem of associating functions with the wrong modules.
ssuen [Tue, 3 Mar 1998 02:49:36 +0000 (02:49 +0000)]
Fixed AIX problem of associating functions with the wrong modules.

24 years agoCorrected LEXLIB
wylie [Mon, 2 Mar 1998 02:48:26 +0000 (02:48 +0000)]
Corrected LEXLIB

24 years agoParameterize LIBRARY_DEST, PROGRAM_DEST, etc.
wylie [Mon, 2 Mar 1998 02:37:59 +0000 (02:37 +0000)]
Parameterize LIBRARY_DEST, PROGRAM_DEST, etc.

24 years agoParameterize LIBRARY_DEST, PROGRAM_DEST, etc.
wylie [Mon, 2 Mar 1998 02:27:45 +0000 (02:27 +0000)]
Parameterize LIBRARY_DEST, PROGRAM_DEST, etc.

24 years agoAdded another template instance
wylie [Mon, 2 Mar 1998 02:22:11 +0000 (02:22 +0000)]
Added another template instance

24 years agoRemoved premature version info
wylie [Mon, 2 Mar 1998 01:09:16 +0000 (01:09 +0000)]
Removed premature version info

24 years agoParameterize LEX_LIB
wylie [Mon, 2 Mar 1998 01:04:29 +0000 (01:04 +0000)]
Parameterize LEX_LIB

24 years agoParameterize LIBRARY_DEST, PROGRAM_DEST, etc
wylie [Mon, 2 Mar 1998 00:42:11 +0000 (00:42 +0000)]
Parameterize LIBRARY_DEST, PROGRAM_DEST, etc

24 years agoParameterize LIBRARY_PATH, etc.
wylie [Mon, 2 Mar 1998 00:25:02 +0000 (00:25 +0000)]
Parameterize LIBRARY_PATH, etc.

24 years agoParameterize LIBRARY_DEST, etc.
wylie [Mon, 2 Mar 1998 00:19:35 +0000 (00:19 +0000)]
Parameterize LIBRARY_DEST, etc.

24 years agoWarning quiescence (VC++)
wylie [Sun, 1 Mar 1998 18:51:01 +0000 (18:51 +0000)]
Warning quiescence (VC++)

24 years agoProperly handle exclusion of callsites
ssuen [Sun, 1 Mar 1998 06:14:48 +0000 (06:14 +0000)]
Properly handle exclusion of callsites

24 years agoStopped using obsolete -v option to paradynd
ssuen [Sun, 1 Mar 1998 03:24:43 +0000 (03:24 +0000)]
Stopped using obsolete -v option to paradynd

24 years agogcc on AIX complained about this being missing.
ssuen [Sun, 1 Mar 1998 02:56:03 +0000 (02:56 +0000)]
gcc on AIX complained about this being missing.

  template class vector<dictionary_hash<string, string>::entry>;

24 years ago*** empty log message ***
mcheyney [Sun, 1 Mar 1998 01:27:42 +0000 (01:27 +0000)]
*** empty log message ***

24 years agoSmall style changes....
mcheyney [Fri, 27 Feb 1998 20:38:02 +0000 (20:38 +0000)]
Small style changes....

24 years agoAdded templates for dictionary_hash<string, string>, and
mcheyney [Fri, 27 Feb 1998 20:36:25 +0000 (20:36 +0000)]
Added templates for dictionary_hash<string, string>, and
vector<FERNode>.

24 years agoFirst version.
mcheyney [Fri, 27 Feb 1998 20:35:30 +0000 (20:35 +0000)]
First version.

24 years ago Changed interface to relocateFunction for 2-pass relocator
mcheyney [Fri, 27 Feb 1998 20:34:24 +0000 (20:34 +0000)]
Changed interface to relocateFunction for 2-pass relocator
code.  Also added some helper functions dealing with Function
Expansion Records.

24 years ago Changed module_is_excluded and function_is_excluded to
mcheyney [Fri, 27 Feb 1998 20:33:59 +0000 (20:33 +0000)]
Changed module_is_excluded and function_is_excluded to
avoid linear lists searches (replaced w/ hash lookup).  The
linear search slowed down paradynd a lot when a pcl file had
a large number "exclude" directives.

24 years ago Expanded NEW_INSTR_ARRAY_LEN (size of array allocated in
mcheyney [Fri, 27 Feb 1998 20:33:23 +0000 (20:33 +0000)]
Expanded NEW_INSTR_ARRAY_LEN (size of array allocated in
paradynd to temporarally hold instructions while functions are
relocated) to deal with some large functions in libc which
have tail-call optimization.

24 years ago Changes having to due with my new 2-pass function relocator code.
mcheyney [Fri, 27 Feb 1998 20:32:56 +0000 (20:32 +0000)]
Changes having to due with my new 2-pass function relocator code.
    First, allocation and usage of a FunctionExpansionRecord for
every function relocation.
    Second, changes dealing with size of relocated functions :
2 pass relocator code calculates the total size change for a
relocated function - this allows us to allocate exactly that much
space.  Previously, code allocated extra space equal to the number
of extra bytes which could be introduced by unwinding tail-call
optimization.  This doesn't work for functions with 2 tail-call
optimizations, or with a tail-call optimizating and something else
which os expanded when the function is relocated, such as a call
in the 2nd instruction.

24 years ago Put in wrappers for 2-pass relocation. We probably need 2-pass
mcheyney [Fri, 27 Feb 1998 20:32:14 +0000 (20:32 +0000)]
Put in wrappers for 2-pass relocation.  We probably need 2-pass
relocation in both sunos and solaris, but not bothering to uodate
the sunos code now.  However, we do put some wrappers in to
allow the code to compile with inst-sparc mods....

24 years ago 2 major changes :
mcheyney [Fri, 27 Feb 1998 20:31:41 +0000 (20:31 +0000)]
  2 major changes :
  a. made function relocation code 2-pass.
  This is necessary to patch jump targets when we move code
around inside a function when we relocate it - for example
when patching tail-call optimization which doesn't occur
at the end of the function, or when we add some extra nops
at the beginning of a function so that the entry point doesnt
overlap with some other features, like a CALL site or part of
a loop.
  b. changed the way we unwind tail-call optimization.
  The origional scheme made the (incorrect) assumption that all
functions called from tail-acll optimization are leaf functions.
I found a counterexample in libc which was breaking under the old
tail-call unwinding scheme.

24 years agoChaning version number to 2.1 - naim
naim [Fri, 27 Feb 1998 19:02:08 +0000 (19:02 +0000)]
Chaning version number to 2.1 - naim

24 years agoReversion to previously working version (which handled sigTRAP correctly on
wylie [Wed, 25 Feb 1998 19:44:45 +0000 (19:44 +0000)]
Reversion to previously working version (which handled sigTRAP correctly on
Solaris/X86), with the incorporation of Oscar's previous timer change.

24 years agoImplementation of CPU time using gethrvtime in order to improve performance -
naim [Wed, 25 Feb 1998 19:08:42 +0000 (19:08 +0000)]
Implementation of CPU time using gethrvtime in order to improve performance -
naim