dyninst.git
19 years agoremoved cvs log lines;
schendel [Thu, 23 Aug 2001 14:44:13 +0000 (14:44 +0000)]
removed cvs log lines;
created consistent metric update value functions;
changed aggregation classes and implementation and updated clients to use
  new aggregation code;
first step in removal of metric style field;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;

19 years agocreated consistent metric update value functions;
schendel [Thu, 23 Aug 2001 14:44:12 +0000 (14:44 +0000)]
created consistent metric update value functions;
reorganized in internal metrics
changed aggregation classes and implementation and updated clients to use
  new aggregation code;
first step in removal of metric style field;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;

19 years agochanged bucket_width internal metric to sampling_rate;
schendel [Thu, 23 Aug 2001 14:44:10 +0000 (14:44 +0000)]
changed bucket_width internal metric to sampling_rate;
reorganized internal metrics; first step in removal of metric style field;

19 years agochanged bucket_width internal metric to sampling_rate;
schendel [Thu, 23 Aug 2001 14:44:08 +0000 (14:44 +0000)]
changed bucket_width internal metric to sampling_rate;
reorganized internal metrics;
first step in removal of metric style field;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;

19 years agoinclude additional header file
schendel [Thu, 23 Aug 2001 14:44:06 +0000 (14:44 +0000)]
include additional header file

19 years agoremove compiler warning; include additional header file
schendel [Thu, 23 Aug 2001 14:44:05 +0000 (14:44 +0000)]
remove compiler warning; include additional header file

19 years agoremove compiler warning; add ability to update aggregation intervals;
schendel [Thu, 23 Aug 2001 14:44:04 +0000 (14:44 +0000)]
remove compiler warning; add ability to update aggregation intervals;
removed unnecessary code;

19 years agofirst step in removal of metric style field; cleaned up in various ways
schendel [Thu, 23 Aug 2001 14:44:01 +0000 (14:44 +0000)]
first step in removal of metric style field; cleaned up in various ways
  changed aggregation classes and implementation and updated clients to use
new aggregation code; removed unneeded friend function declarations;
  created consistent metric update value functions

19 years agoadded ability to register a callback to be called when calling
schendel [Thu, 23 Aug 2001 14:43:59 +0000 (14:43 +0000)]
added ability to register a callback to be called when calling
  process::continueProc()

19 years agoupdated DEPENDS file to reflect include file changes
schendel [Thu, 23 Aug 2001 14:43:58 +0000 (14:43 +0000)]
updated DEPENDS file to reflect include file changes

19 years agochanged aggregation classes and implementation and updated clients to use
schendel [Thu, 23 Aug 2001 14:43:55 +0000 (14:43 +0000)]
changed aggregation classes and implementation and updated clients to use
  new aggregation code; removed unneeded friend function declarations;
deleted aggregation operator aggAvg

19 years agofixed bug from my previous commit, where I was translating NaN values into
schendel [Thu, 23 Aug 2001 14:43:54 +0000 (14:43 +0000)]
fixed bug from my previous commit, where I was translating NaN values into
  0 values when transferring samples between front-end and visis, now NaN
  values are preserved;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value

19 years agochanged so initial actual value is sent in addition to the change in
schendel [Thu, 23 Aug 2001 14:43:47 +0000 (14:43 +0000)]
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;
for sampleFunction metrics, reconstructing each buckets actual value by
  keeping a running total (integrating) of the samples

19 years agoreorganized sample data histogram callback function;
schendel [Thu, 23 Aug 2001 14:43:46 +0000 (14:43 +0000)]
reorganized sample data histogram callback function;
remove global field from histogram class;
add intelligence to know what to use for an aggregation interval;

19 years agochanged so initial actual value is sent in addition to the change in
schendel [Thu, 23 Aug 2001 14:43:44 +0000 (14:43 +0000)]
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;

19 years agochanged aggregation classes and implementation and updated clients to use
schendel [Thu, 23 Aug 2001 14:43:42 +0000 (14:43 +0000)]
changed aggregation classes and implementation and updated clients to use
  new aggregation code;
removed unneeded friend function declarations;
added ability for a metricInstance to know whether an initialActualValue
  has been sent on a perfStream;
remove global field from histogram class;
reorganized sample data histogram callback function;
added intelligence to know what to use for an aggregation interval;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;
reorganized sample data histogram callback function;
first step in removal of metric style field; update various static member

19 years agoremove global field from histogram class;
schendel [Thu, 23 Aug 2001 14:43:41 +0000 (14:43 +0000)]
remove global field from histogram class;
changed aggregation classes and implementation and updated clients to use
  new aggregation code; reorganized sample data histogram callback function;
  updated to use new Vector erase function;
added ability for a metricInstance to know whether an initialActualValue
  has been sent on a perfStream; first step in removal of metric style
  field;
cleaned up function names and implementation of daemon's sending the time
  it started to the front-end;

19 years agofirst step in removal of metric style field; update various static member
schendel [Thu, 23 Aug 2001 14:43:40 +0000 (14:43 +0000)]
first step in removal of metric style field; update various static member
  definitions;
remove global field from histogram class;
cleaned up function names and implementation of daemon's sending the time
  it started to the front-end;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;

19 years agocleaned up function names and implementation of daemon's sending the time
schendel [Thu, 23 Aug 2001 14:43:38 +0000 (14:43 +0000)]
cleaned up function names and implementation of daemon's sending the time
  it started to the front-end;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;
cleaned up calculation of network delay time, now take multiple samples
  of network delay time and use the average of these samples;
reorganized batchSampleDataCallback;

19 years agocleaned up function names and implementation of daemon's sending the time
schendel [Thu, 23 Aug 2001 14:43:37 +0000 (14:43 +0000)]
cleaned up function names and implementation of daemon's sending the time
  it started to the front-end;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value;
cleaned up calculation of network delay time, now take multiple samples
  of network delay time and use the average of these samples;
reorganized batchSampleDataCallback;
removed passing of node weight and internal node indicator when passing
  sample data from daemon to front-end;
changed aggregation classes and implementation and updated clients to use
  new aggregation code;

19 years agocleaned up function names and implementation of daemon's sending the time
schendel [Thu, 23 Aug 2001 14:43:35 +0000 (14:43 +0000)]
cleaned up function names and implementation of daemon's sending the time
  it started to the front-end

19 years agochanged aggregation classes and implementation and updated clients to use
schendel [Thu, 23 Aug 2001 14:43:34 +0000 (14:43 +0000)]
changed aggregation classes and implementation and updated clients to use
  new aggregation code;
added ability for a metricInstance to know whether an initialActualValue
  has been sent on a perfStream

19 years agoremoved passing of node weight and internal node indicator when passing
schendel [Thu, 23 Aug 2001 14:43:32 +0000 (14:43 +0000)]
removed passing of node weight and internal node indicator when passing
  sample data from daemon to front-end;
cleaned up function names and implementation of daemon's sending the time
  it started to the front-end;
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value

19 years agochanged so initial actual value is sent in addition to the change in
schendel [Thu, 23 Aug 2001 14:43:31 +0000 (14:43 +0000)]
changed so initial actual value is sent in addition to the change in
  sampling value data, which allows actual value at any point to be
  reconstructed by integrating across change in sample value and adding
  initial actual value

19 years agofixed a bug in a previous commit which caused NT to not compile
schendel [Thu, 23 Aug 2001 14:43:29 +0000 (14:43 +0000)]
fixed a bug in a previous commit which caused NT to not compile

19 years agoreorganized some paradyn specific code
schendel [Thu, 23 Aug 2001 14:43:28 +0000 (14:43 +0000)]
reorganized some paradyn specific code

19 years agochanged MACRO into an inline function; added ability to register a callback
schendel [Thu, 23 Aug 2001 14:43:24 +0000 (14:43 +0000)]
changed MACRO into an inline function; added ability to register a callback
  to be called when calling process::continueProc()

19 years agoreorganized internal metrics; changed MACRO into an inline function;
schendel [Thu, 23 Aug 2001 14:43:22 +0000 (14:43 +0000)]
reorganized internal metrics; changed MACRO into an inline function;
removed compiler warning; created consistent metric update value functions;
added ability to register a callback to be called when calling
  process::continueProc()

19 years agochanged MACRO into an inline function
schendel [Thu, 23 Aug 2001 14:43:20 +0000 (14:43 +0000)]
changed MACRO into an inline function

19 years agoadded ability to register a callback to be called when calling
schendel [Thu, 23 Aug 2001 14:43:18 +0000 (14:43 +0000)]
added ability to register a callback to be called when calling
process::continueProc()

19 years agoremoved compiler warning; reorganized internal metrics
schendel [Thu, 23 Aug 2001 14:43:17 +0000 (14:43 +0000)]
removed compiler warning; reorganized internal metrics

19 years agoremoved compiler warning
schendel [Thu, 23 Aug 2001 14:43:14 +0000 (14:43 +0000)]
removed compiler warning

19 years agoadded members to turn on and off the debug streams
schendel [Thu, 23 Aug 2001 14:43:12 +0000 (14:43 +0000)]
added members to turn on and off the debug streams

19 years agoremoved compiler warning; added a member which removes (erase) an element
schendel [Thu, 23 Aug 2001 14:43:11 +0000 (14:43 +0000)]
removed compiler warning; added a member which removes (erase) an element

19 years agomade default initialization of timeLength to be in uninitialized state
schendel [Thu, 23 Aug 2001 14:43:09 +0000 (14:43 +0000)]
made default initialization of timeLength to be in uninitialized state
  added additional timeStamp constants

19 years agoadded const version of index operator
schendel [Thu, 23 Aug 2001 14:43:08 +0000 (14:43 +0000)]
added const version of index operator

19 years agoadded const version of index operator
schendel [Thu, 23 Aug 2001 14:36:02 +0000 (14:36 +0000)]
added const version of index operator

19 years agoYou know, "for (int i; i < foo; i++)" isn't really a wise idea.
bernat [Wed, 22 Aug 2001 18:26:54 +0000 (18:26 +0000)]
You know, "for (int i; i < foo; i++)" isn't really a wise idea.
Sigh.

19 years agoFixed problem with reading a zero-length data segment.
bernat [Wed, 22 Aug 2001 01:31:28 +0000 (01:31 +0000)]
Fixed problem with reading a zero-length data segment.

19 years agoaix.C: Check all running threads for a given breakpoint address instead
bernat [Mon, 20 Aug 2001 22:23:46 +0000 (22:23 +0000)]
aix.C: Check all running threads for a given breakpoint address instead
of an arbitrarily picked one.

sharedobject.*: continuing name updates

19 years agoChanged the symtab (Image class) function lookup methods. Function calls
bernat [Mon, 20 Aug 2001 19:59:04 +0000 (19:59 +0000)]
Changed the symtab (Image class) function lookup methods. Function calls
were changed to match the new names.

19 years agoChanged a loop iterator from "int" to "unsigned int", the same as the
bernat [Mon, 20 Aug 2001 19:58:25 +0000 (19:58 +0000)]
Changed a loop iterator from "int" to "unsigned int", the same as the
value it was compared with.

19 years agoAdded a check to prevent reading a non-existent string pool (which would
bernat [Wed, 15 Aug 2001 14:45:35 +0000 (14:45 +0000)]
Added a check to prevent reading a non-existent string pool (which would
cause parsing to fail).

19 years agoThis fixes a bug with the Paradynd NT build
chadd [Fri, 10 Aug 2001 18:55:28 +0000 (18:55 +0000)]
This fixes a bug with the Paradynd NT build

20 years agoThis commit fixes the bugs introduced into
chadd [Thu, 9 Aug 2001 15:06:14 +0000 (15:06 +0000)]
This commit fixes the bugs introduced into
paradyn by the Win2k and WinCE commits.
--inclusion of MapSymbols in the Win2K Makefile
--adds DLLMain() to RTinst.c so paradyn works on win2k

20 years agoUndo the #ifdef's from the my commit.
gurari [Wed, 8 Aug 2001 18:58:16 +0000 (18:58 +0000)]
Undo the #ifdef's from the my commit.

20 years agoDo deferred relocation and instrumentation for Paradyn only.
gurari [Wed, 8 Aug 2001 18:50:40 +0000 (18:50 +0000)]
Do deferred relocation and instrumentation for Paradyn only.

20 years agoThis commit fixes c++ style comments to c style comments in the listed
chadd [Tue, 7 Aug 2001 20:49:01 +0000 (20:49 +0000)]
This commit fixes c++ style comments to c style comments in the listed
files

dyninstAPI_RT/h/dyninstAPI_RT.h
dyninstAPI_RT/src/RTcommon.c
dyninstAPI_RT/src/RTheap.c
common/h/Types.h

20 years agoI've changed function relocation so that it dynamically allocates a buffer for
gurari [Tue, 7 Aug 2001 17:01:19 +0000 (17:01 +0000)]
I've changed function relocation so that it dynamically allocates a buffer for
copying a function into, rather than using a statically allocated buffer.

20 years agoMade cosmetic changes to handling deferred function relocation and
gurari [Mon, 6 Aug 2001 23:22:53 +0000 (23:22 +0000)]
Made cosmetic changes to handling deferred function relocation and
instrumentation.

20 years agoAdded handling of set o7 and tail call optimization LocalAlterations at the
gurari [Mon, 6 Aug 2001 23:21:59 +0000 (23:21 +0000)]
Added handling of set o7 and tail call optimization LocalAlterations at the
same location.

20 years agoChanged handleIfDueToSharedObjectMapping to cause a return from the
buck [Fri, 3 Aug 2001 19:08:24 +0000 (19:08 +0000)]
Changed handleIfDueToSharedObjectMapping to cause a return from the
r_brk routine by modifying registers to emulate a ret instruction,
rather than by moving the program counter where we believe a ret
instruction to be.

20 years agoThis commit provides code for the Windows CE 3.0 Pocket PC
chadd [Wed, 1 Aug 2001 15:39:49 +0000 (15:39 +0000)]
This commit provides code for the Windows CE 3.0 Pocket PC
platform (for MIPS based devices).

A core/dyninstAPI/mips-unknown-wince2.11
A core/dyninstAPI/h/baseTrampTemplate.h
A core/dyninstAPI/h/remoteDevice.h
A core/dyninstAPI/src/asmExterns.h
A core/dyninstAPI/src/remoteDevice.C
A core/dyninstAPI/src/deviceStructs.h
A core/dyninstAPI/src/MapSymbols.C
A core/dyninstAPI/src/MapSymbols.h
A core/dyninstAPI/src/wincetypes.h
A core/dyninstAPI/src/w32CONTEXT.h
A core/dyninstAPI_RT/mips-unknown-wince2.11
A core/dyninstAPI/mips-unknown-wince2.11/helper
A core/dyninstAPI/mips-unknown-wince2.11/helper/Makefile
A core/dyninstAPI/mips-unknown-wince2.11/helper/DyninstClient.cpp
A core/dyninstAPI/mips-unknown-wince2.11/helper/DyninstClient.vcp
A core/dyninstAPI/mips-unknown-wince2.11/helper/CE-mipsasm.S
A core/dyninstAPI/mips-unknown-wince2.11/helper/DyninstClient.vcw
A core/dyninstAPI/mips-unknown-wince2.11/helper/DyninstClient.vcl
A core/dyninstAPI/mips-unknown-wince2.11/helper/DyninstClient.vcb
A core/dyninstAPI/mips-unknown-wince2.11/helper/DyninstClient.vco
A core/dyninstAPI/mips-unknown-wince2.11/depends
A core/dyninstAPI/mips-unknown-wince2.11/Makefile
A core/dyninstAPI_RT/mips-unknown-wince2.11/Makefile
A core/dyninstAPI_RT/mips-unknown-wince2.11/depends

M core/dyninstAPI/h/BPatch.h
M core/dyninstAPI/h/BPatch_Set.h
M core/dyninstAPI/h/BPatch_dll.h
M core/dyninstAPI/i386-unknown-nt4.0/Makefile
M core/dyninstAPI/src/AddressHandle-mips.C
M core/dyninstAPI/src/BPatch.C
M core/dyninstAPI/src/BPatch_flowGraph.C
M core/dyninstAPI/src/BPatch_module.C
M core/dyninstAPI/src/BPatch_templates.C
M core/dyninstAPI/src/BPatch_thread.C
M core/dyninstAPI/src/CodeView.h
M core/dyninstAPI/src/Object-nt.C
M core/dyninstAPI/src/Object-nt.h
M core/dyninstAPI/src/Object.h
M core/dyninstAPI/src/arch-mips.h
M core/dyninstAPI/src/arch.h
M core/dyninstAPI/src/ast.C
M core/dyninstAPI/src/ast.h
M core/dyninstAPI/src/dynamiclinking.h
M core/dyninstAPI/src/inst-mips.C
M core/dyninstAPI/src/inst-winnt.C
M core/dyninstAPI/src/instPoint.h
M core/dyninstAPI/src/os.h
M core/dyninstAPI/src/pdwinnt.C
M core/dyninstAPI/src/pdwinnt.h
M core/dyninstAPI/src/process.C
M core/dyninstAPI/src/process.h
M core/dyninstAPI/src/stats.C
M core/dyninstAPI/src/symtab.C
M core/dyninstAPI/src/symtab.h
M core/dyninstAPI/tests/src/test_util.C
M core/dyninstAPI/tests/src/test_util.h
M core/dyninstAPI_RT/h/dyninstAPI_RT.h
M core/dyninstAPI_RT/src/RTcommon.c
M core/dyninstAPI_RT/src/RTheap.c
M core/dyninstAPI_RT/src/RTwinnt.c
M core/common/h/Types.h
M core/common/h/fraction.h
M core/common/h/headers.h
M core/common/h/int64iostream.h
M core/common/h/ntHeaders.h
M core/common/src/String.C
M core/common/src/Time.C
M core/common/src/Timer.C
M core/common/src/pathName.C
M core/common/src/timing.C

20 years agoAdded a few lines to facilitate the removal of a metricDefinitionNode, so
gurari [Tue, 31 Jul 2001 19:10:24 +0000 (19:10 +0000)]
Added a few lines to facilitate the removal of a metricDefinitionNode, so
an assertion would not fail.

20 years agoInsert is no longer called called from anywhere.
gurari [Mon, 30 Jul 2001 22:28:04 +0000 (22:28 +0000)]
Insert is no longer called called from anywhere.

20 years agoChange call to Vector::insert to call to Vector::push_back.
gurari [Mon, 30 Jul 2001 22:27:21 +0000 (22:27 +0000)]
Change call to Vector::insert to call to Vector::push_back.

20 years agoJust cosmetic changes to my previous commit.
gurari [Fri, 27 Jul 2001 21:02:49 +0000 (21:02 +0000)]
Just cosmetic changes to my previous commit.

20 years agoThis commit changes the way we match library names when looking for a
gurari [Fri, 27 Jul 2001 19:42:31 +0000 (19:42 +0000)]
This commit changes the way we match library names when looking for a
function in a specified shared object. Instead of having a wildcard at the
end of the library name, which I initially used so we could get around
version numbers, we now just ignore the version number when checking for a
match. Thus, in order to find a function in libm, one needs to specify
libm.so, i.e. the extension .so, .a, etc must be explicit. Specifying the
version number as well will work, but add does nothing, since the
version number will be ignored when the check for a match is made.

20 years agoI've updated the findOneFunction(string name) and
gurari [Thu, 26 Jul 2001 16:43:44 +0000 (16:43 +0000)]
I've updated the findOneFunction(string name) and
findOneFunctionInAll(string name) functions of process.C so that a shared
object can be specified when looking for a function. The so is
specified by prefixing the input parameter "name" with the name of the
shared object followed by a "/" e.g. libm.so/sqrt. The input "name" then
get's split into a lib_name and func_name, e.g. lib_name = libm.so,
func_name = sqrt by iterating over the characters in "name" BACKWORDS from
the LAST character of "name". The find functions then search the named so
for the function and return NULL if the function was not found.

If no lib_name is specified, i.e. "name" = sqrt, then the find functions
revert to their old behavior which is to first search the executable for
the function and then iterate over the so's, searching each in turn.

20 years agoRemoved compiler warning that was generated by the prettyName and
shergali [Mon, 23 Jul 2001 18:27:44 +0000 (18:27 +0000)]
Removed compiler warning that was generated by the prettyName and
symTabName functions in the function_base object.

20 years agoRemoved several comiler warnings.
gurari [Mon, 23 Jul 2001 15:40:12 +0000 (15:40 +0000)]
Removed several comiler warnings.

20 years agoThis commit clears an assertion failure for MT paradyn. When I inserted
gurari [Fri, 20 Jul 2001 21:38:56 +0000 (21:38 +0000)]
This commit clears an assertion failure for MT paradyn. When I inserted
the code so that paradyn would retry relocating a function at a later
time (after it couldn't relocate the function because it was executing
inside it), I didn't make the corresponding changes in the code for MT
paradyn.

20 years agoFixes a bug where some two byte jumps were not having their jump offsets
gurari [Fri, 20 Jul 2001 19:45:57 +0000 (19:45 +0000)]
Fixes a bug where some two byte jumps were not having their jump offsets
updated correctly during relocation. Namely, the code for updating the
displacement:

   instr++;   // instr is a pointer to an instruction
   instr++;
   *((char *) instr) = (char) newOffset; // set the jump's displacement

was not changing the jump displacement because the jump instruction is
two bytes long and the second instr++ walks us past the end of the
instruction. Therefore the second instr++ was removed.

20 years agoRe-added the parameter.
bernat [Thu, 19 Jul 2001 14:43:37 +0000 (14:43 +0000)]
Re-added the parameter.

20 years agoCleanup
bernat [Wed, 18 Jul 2001 20:39:12 +0000 (20:39 +0000)]
Cleanup

20 years agoAdded the constant ADDR_NULL for the Address type. Equivalent to 0/NULL.
bernat [Wed, 18 Jul 2001 20:35:07 +0000 (20:35 +0000)]
Added the constant ADDR_NULL for the Address type. Equivalent to 0/NULL.

20 years agosymtab.h: removed a parameter name to get rid of a compiler warning.
bernat [Wed, 18 Jul 2001 20:34:42 +0000 (20:34 +0000)]
symtab.h: removed a parameter name to get rid of a compiler warning.
The parameter is commented out.
pdThread.h: replaced 0 with ADDR_NULL

20 years agofix so SampledFunctions are done in a non-proportional way and actual
schendel [Wed, 18 Jul 2001 16:45:21 +0000 (16:45 +0000)]
fix so SampledFunctions are done in a non-proportional way and actual
samples values are used as opposed to deltas of sample values

20 years agoRemoved extraneous debugging info.
bernat [Wed, 18 Jul 2001 13:29:13 +0000 (13:29 +0000)]
Removed extraneous debugging info.

20 years agoAdded a new build option for AIX. Defining USES_LIB_TEXT_HEAP in the
bernat [Tue, 17 Jul 2001 22:33:07 +0000 (22:33 +0000)]
Added a new build option for AIX. Defining USES_LIB_TEXT_HEAP in the
top level make.config will cause the Paradyn runtime library to be linked
with a library containing a megabyte of free space. We use this for
instrumentation of other shared libraries. Add another one to the "we
do the best we can and die if we can't" list.

Also cleaned up pdThread.h to get rid of some build warnings. NULL != 0,
by the way.

20 years agoAdded an extra comment into symtab.h to explain a particular assert
shergali [Sat, 14 Jul 2001 03:43:31 +0000 (03:43 +0000)]
Added an extra comment into symtab.h to explain a particular assert
statment.  Modified symtab.C to fix silly NT compiler error.

20 years agoAdded support for types other than "int" to BPatch_thread::malloc.
buck [Fri, 13 Jul 2001 19:33:58 +0000 (19:33 +0000)]
Added support for types other than "int" to BPatch_thread::malloc.

20 years agoThis change allows the parsing of multiple symbol names for a given address
shergali [Thu, 12 Jul 2001 21:35:21 +0000 (21:35 +0000)]
This change allows the parsing of multiple symbol names for a given address
The function base object is relatively the same, except now the names are
stored in a vector and the functions that previously just returned the
symbol name we stored, now simply return the first symbol we found.  There
are also functions for grabbing the name vector as well as for adding
names to the vector.

20 years agoThis
shergali [Thu, 12 Jul 2001 21:28:01 +0000 (21:28 +0000)]
This

20 years agoHello all:
chadd [Thu, 12 Jul 2001 20:25:44 +0000 (20:25 +0000)]
Hello all:

This commit fixes the Makefiles for the NT/Win2k to
remove the -MD compiler option from the RT dll, which
is unnecessary.  This compiler option broke the Paradyn
rtinst library compilation

enjoy.
chadd

M core/nmake.config
M core/dyninstAPI_RT/i386-unknown-nt4.0/Makefile
M core/dyninstAPI/i386-unknown-nt4.0/Makefile
M core/dyninstAPI/tests/i386-unknown-nt4.0/Makefile

20 years ago This commit allows us to force the relocation of functions being
gurari [Wed, 11 Jul 2001 21:19:52 +0000 (21:19 +0000)]
  This commit allows us to force the relocation of functions being
  instrumented in the dyninst test suite with the -relocate flag. I added a
  forceRelocation_NP variable to the BPatch class and it is accessed and set
  by the functions hasForcedRelocation_NP() and setForcedRelocation_NP(bool).
  The method pd_Function method findInstPoints() checks if the
  forceRelocation_NP variable has been set to true and if it has, then it
  sets its relocatable_ which leads to the function's being relocated when
  it is instrumented.

20 years agoSmall fixes related to AddressHandle construction in x86 platform.
tikir [Wed, 11 Jul 2001 21:06:21 +0000 (21:06 +0000)]
Small fixes related to AddressHandle construction in x86 platform.

20 years agoCorrected handling of local variables in Fortran77 on IBM.
hollings [Wed, 11 Jul 2001 20:15:03 +0000 (20:15 +0000)]
Corrected handling of local variables in Fortran77 on IBM.

20 years agoThis commit cleans up the findInstPoints function for sparc. Previously
gurari [Tue, 10 Jul 2001 20:37:07 +0000 (20:37 +0000)]
This commit cleans up the findInstPoints function for sparc. Previously
there were two versions of the function, an initial default version which
called the second version in the case where the function being examined for
instPoints needed to be relocated to be instrumented. This had been done
because instPoints were created differently for functions that needed
relocation. There is now only one version of findInstPoints and it can
handle both normal functions and functions that need to be relocated.

20 years agoHello all:
chadd [Mon, 9 Jul 2001 19:34:48 +0000 (19:34 +0000)]
Hello all:

This commit makes DyninstAPI functional on Win2k and
WinNT 4.0.

interesting bits:

: The compiler now takes the -MD option
which produces a multithreaded dll.  This is done
to ensure memory allocatd by the dyninstAPI.dll is
deallocated correctly by the mutator.

: There is a description in pdwinnt.C detailing the differences
between the NT4.0 debug api and the Win2k debug api,
and how the code has changed to handle them.

: The runtime dll libdyninstAPI_RT.dll now uses DLLMain()
to initialize the necessary data, which saves a bit
on the startup instrumentation, this is detailed in
pdwinnt.C as well.

enjoy.
chadd

20 years agodisable the "snap to grid" feature of the component times since it is a
schendel [Fri, 6 Jul 2001 21:34:29 +0000 (21:34 +0000)]
disable the "snap to grid" feature of the component times since it is a
  source of an assert in certain situations in the aggregation code

20 years agorollback the aggregation code to before my Jun 23 commit, due to asserts
schendel [Fri, 6 Jul 2001 18:50:32 +0000 (18:50 +0000)]
rollback the aggregation code to before my Jun 23 commit, due to asserts
with MPI programs

20 years agofixed the memory leak occurred in win2000 during addresshandle contsruction
tikir [Fri, 6 Jul 2001 18:10:41 +0000 (18:10 +0000)]
fixed the memory leak occurred in win2000 during addresshandle contsruction

20 years agoFix for arbitrary inst points in case of relocation
tikir [Thu, 5 Jul 2001 16:53:21 +0000 (16:53 +0000)]
Fix for arbitrary inst points in case of relocation
fix for vector += for alpha
fix for findFunctionIn
fix for isLibTag

20 years agoWith this commit we are now able to relocate x86 functions that contain a
gurari [Tue, 3 Jul 2001 21:40:06 +0000 (21:40 +0000)]
With this commit we are now able to relocate x86 functions that contain a
call to the next address. The call serves the purpose of placing the
address of the next instruction on the stack. Instead of a call, the
relocated function pushes the address of the next instruction (in the
original function) on the stack.

20 years agoThis commit allows paradyn to defer instrumenting a function to a later
gurari [Mon, 2 Jul 2001 22:43:22 +0000 (22:43 +0000)]
This commit allows paradyn to defer instrumenting a function to a later
time. This occurs when a function needs to be relocated to be
instrumented, but the relocation (and subsequent instrumentation) cannot
be done because the application is executing inside the function. Paradynd
now keeps a vector of defInst (deferred instrumentation) objects (they
indicate the metric and focus that could not be instrumented) and
periodically tries to insert the instrumentation. After an arbitrary
number of tries, which I set it up to be a thousand, if the function has
not been relocated, instrumentation is instead inserted using traps. In
order to do deferred instrumentation I added a boolean to the
addInstFunc() and findAndInstallBaseTramp() functions to indicate whether
the instrumentation had to be deferred. findAndInstallBaseTramp() is a
platform dependent function.

20 years agofix mistake in initializing sample rate, now is at .2 seconds again
schendel [Sat, 23 Jun 2001 19:07:05 +0000 (19:07 +0000)]
fix mistake in initializing sample rate, now is at .2 seconds again

20 years agoupdated DEPENDS file since dependencies changed
schendel [Wed, 20 Jun 2001 20:44:35 +0000 (20:44 +0000)]
updated DEPENDS file since dependencies changed

20 years agolink in advapi32.lib to accommodate code in pdutil that determines cpu
schendel [Wed, 20 Jun 2001 20:44:04 +0000 (20:44 +0000)]
link in advapi32.lib to accommodate code in pdutil that determines cpu
cycle rate via the windows registry

20 years agopdutil now has histogram code that uses the new types, so include in
schendel [Wed, 20 Jun 2001 20:43:35 +0000 (20:43 +0000)]
pdutil now has histogram code that uses the new types, so include in
histogram in pdutil

20 years agoUse default initialization for time and sample value classes. Changed to
schendel [Wed, 20 Jun 2001 20:43:15 +0000 (20:43 +0000)]
Use default initialization for time and sample value classes.  Changed to
handle member variables that might be uninitialized.

20 years agoAdded a commented out debug flag for convenient use.
schendel [Wed, 20 Jun 2001 20:42:39 +0000 (20:42 +0000)]
Added a commented out debug flag for convenient use.

20 years agoFile no longer needed.
schendel [Wed, 20 Jun 2001 20:42:14 +0000 (20:42 +0000)]
File no longer needed.

20 years agoUse new NaN representation.
schendel [Wed, 20 Jun 2001 20:41:52 +0000 (20:41 +0000)]
Use new NaN representation.

20 years agoNew pdRate class used in PC.
schendel [Wed, 20 Jun 2001 20:41:25 +0000 (20:41 +0000)]
New pdRate class used in PC.

20 years agoRemove histType (Interval vs. Bucket) attribute of histogram. Update to use
schendel [Wed, 20 Jun 2001 20:41:00 +0000 (20:41 +0000)]
Remove histType (Interval vs. Bucket) attribute of histogram.  Update to use
new time and sample value types (ie. timeStamp, relTimeStamp, timeLength,
pdSample, pdRate).  Use new NaN representation.  Change so bucket sample
values are no longer normalized, but unnormalized values.  Use new class
relTimeStamp internally in some calculations.  Remove smoothing code in
histogram since unused and done in visis.

20 years agoDon't use makenan.C anymore. Link in pdRate.C.
schendel [Wed, 20 Jun 2001 20:40:20 +0000 (20:40 +0000)]
Don't use makenan.C anymore.  Link in pdRate.C.

20 years agoAdd selector and mutator methods to wrap the global current and internal
schendel [Wed, 20 Jun 2001 20:39:54 +0000 (20:39 +0000)]
Add selector and mutator methods to wrap the global current and internal
  metric sampling rate variables.  Use pdutil instead of pdutilOld.  Update
  to use new time and sample value types (ie. timeStamp, relTimeStamp,
  timeLength, pdSample, pdRate).

20 years agoUse default initialization for time and sample value classes.
schendel [Wed, 20 Jun 2001 20:39:22 +0000 (20:39 +0000)]
Use default initialization for time and sample value classes.

20 years agoFixed warning with casting away of const. Fix warnings with floating point
schendel [Wed, 20 Jun 2001 20:39:02 +0000 (20:39 +0000)]
Fixed warning with casting away of const.  Fix warnings with floating point
  literals.