dyninst.git
8 years agoAdd missing BPatch_image include.
Bill Williams [Tue, 4 Oct 2011 15:03:18 +0000 (10:03 -0500)]
Add missing BPatch_image include.

8 years agoAdd missing stdio.h include.
Bill Williams [Tue, 4 Oct 2011 15:02:17 +0000 (10:02 -0500)]
Add missing stdio.h include.

8 years agoAdd quiet output driver to Windows makefile.
Bill Williams [Mon, 3 Oct 2011 15:50:32 +0000 (10:50 -0500)]
Add quiet output driver to Windows makefile.

8 years agoAdd check-patch target.
Bill Williams [Thu, 29 Sep 2011 15:29:07 +0000 (10:29 -0500)]
Add check-patch target.

8 years ago* Wrapped Dyner's inclusion in a TCL/TK existence check
Bill Williams [Fri, 23 Sep 2011 15:27:10 +0000 (10:27 -0500)]
* Wrapped Dyner's inclusion in a TCL/TK existence check
* Fixed one bug in TCL/TK detection: we depended on TCL_TK_DIR getting set in make.config.local, which is not the case anymore--separate lib and include directories are set there.
* Re-enabled -q option for quieter test output, though it is not 100% working
* Started adding "make check" and "make check-foo" targets that will build and test various components/axes of Dyninst.
  - "make check" will build and run dyninst, symtab, proccontrol, and instructionAPI tests in a quick form.
  - "make check-all" will build and "runTests -all".
  - "make check-$(component)" will build and run tests for $(component)
  - PatchAPI not yet in the component list

9 years agoFix some compilation errors on Windows.
Wenbin Fang [Tue, 20 Sep 2011 21:26:16 +0000 (16:26 -0500)]
Fix some compilation errors on Windows.

9 years agoFix Typo
Madhavi Krishnan [Fri, 16 Sep 2011 20:51:04 +0000 (15:51 -0500)]
Fix Typo

9 years agoTypo fix.
Madhavi Krishnan [Fri, 16 Sep 2011 20:41:40 +0000 (15:41 -0500)]
Typo fix.

9 years agoBGQ initial commit- typo fix
Madhavi Krishnan [Fri, 16 Sep 2011 18:14:04 +0000 (13:14 -0500)]
BGQ initial commit- typo fix

9 years agoBGQ initial commit - missed files
Madhavi Krishnan [Fri, 16 Sep 2011 18:00:15 +0000 (13:00 -0500)]
BGQ initial commit - missed files

9 years agoBGQ rewriter initial commit
Madhavi Krishnan [Fri, 16 Sep 2011 17:59:13 +0000 (12:59 -0500)]
BGQ rewriter initial commit

9 years agoAdded Dyner to core Makefile.
David Aeschlimann [Thu, 15 Sep 2011 17:37:29 +0000 (12:37 -0500)]
Added Dyner to core Makefile.

9 years agoDyner/DynC final commit. Fixes several small issues:
David Aeschlimann [Thu, 18 Aug 2011 19:36:15 +0000 (14:36 -0500)]
Dyner/DynC final commit. Fixes several small issues:

Removed ability to specify a point by file and line number in Dyner due to a feature change in Dyninst.
Removed SaveTheWorld from Dyner as it no longer exists.
Added logging feature to Dyner. Use command line option "-log <filename>" to create a log.
Fixed dynC language conflict involving nested dereferencing.
Code clean up.

9 years agoFix for ppc32 build failure.
Madhavi Krishnan [Fri, 9 Sep 2011 15:57:12 +0000 (10:57 -0500)]
Fix for ppc32 build failure.

9 years agoFix for build error from previous commit.
Madhavi Krishnan [Wed, 7 Sep 2011 19:58:19 +0000 (14:58 -0500)]
Fix for build error from previous commit.

9 years agoppc64 rewriter
Madhavi Krishnan [Tue, 6 Sep 2011 20:17:07 +0000 (15:17 -0500)]
ppc64 rewriter

Initial commit for ppc64 rewriter. This commit
includes changes to emitElf-64 to support
rewriting power binaries. For now, this works
only on inline instrumentation (not with
instrumentation libraries).

9 years agoppc64_linux rewriter
Madhavi Krishnan [Tue, 6 Sep 2011 19:47:37 +0000 (14:47 -0500)]
ppc64_linux rewriter

This is the initial commit for ppc64 rewriter. This
commit has Ray's changes to code generation for emitting
function calls using Table of Contents in ppc64.

9 years agoUpdate the patchAPI manual and change a method name in PatchAPI.
Wenbin Fang [Wed, 31 Aug 2011 18:14:58 +0000 (13:14 -0500)]
Update the patchAPI manual and change a method name in PatchAPI.

Details:
- Update patchAPI manual
  - Update the abstraction figure (Figure 1).
  - Update the changed interfaces after merging Defensive branch.
  - Proofreading and correct some typos.
- Change a method name
  - AddrSpace::getFirstObject => AddrSpace::executable

9 years agoAdd Dyninst->PatchAPI interface calls.
Andrew Bernat [Mon, 29 Aug 2011 18:52:52 +0000 (13:52 -0500)]
Add Dyninst->PatchAPI interface calls.

9 years agoMake the usage of pointer and shared_pointer consistent in PatchAPI, and fix
Wenbin Fang [Sat, 27 Aug 2011 21:13:04 +0000 (16:13 -0500)]
Make the usage of pointer and shared_pointer consistent in PatchAPI, and fix
bugs for PatchAPI::Point::getCallee and PatchAPI::PatchBlock::getCallee.

What's new:

- use raw pointer to PatchAPI's plugins: PatchAPI::CFGMaker,
  PatchAPI::PointMaker, PatchAPI::AddrSpace, PatchAPI::Instrumenter

- in PatchBlock::getCallee and Point::getCallee, pass a relative address to
  CodeObject::findFuncByEntry, instead of passing an absolute address.

- change the order of parameters in PatchMgr::create

- update patchapi document

9 years agoUpdate .gitignore to include patchAPI documentation secondary files
Andrew Bernat [Fri, 26 Aug 2011 19:05:49 +0000 (14:05 -0500)]
Update .gitignore to include patchAPI documentation secondary files

9 years agoPatchAPI documentation updates.
Andrew Bernat [Fri, 26 Aug 2011 19:04:19 +0000 (14:04 -0500)]
PatchAPI documentation updates.

9 years agoMerge branch 'master' of git.dyninst.org:/pub/dyninst
Andrew Bernat [Thu, 25 Aug 2011 19:39:39 +0000 (14:39 -0500)]
Merge branch 'master' of git.dyninst.org:/pub/dyninst

9 years agoFix calling varargs functions in dynamic instrumentation
Andrew Bernat [Thu, 25 Aug 2011 19:30:44 +0000 (14:30 -0500)]
Fix calling varargs functions in dynamic instrumentation

9 years agoA complete draft of patchapi manual is done.
Wenbin Fang [Wed, 24 Aug 2011 19:30:55 +0000 (14:30 -0500)]
A complete draft of patchapi manual is done.

9 years agoMerge branch 'master' of git.dyninst.org:/pub/dyninst
Wenbin Fang [Tue, 23 Aug 2011 22:49:44 +0000 (17:49 -0500)]
Merge branch 'master' of git.dyninst.org:/pub/dyninst

9 years agoUpdate patchAPI document.
Wenbin Fang [Tue, 23 Aug 2011 22:48:48 +0000 (17:48 -0500)]
Update patchAPI document.

9 years agoFix bug in instrumenting shared code where we would "cross" function boundaries.
Andrew Bernat [Tue, 23 Aug 2011 20:40:20 +0000 (15:40 -0500)]
Fix bug in instrumenting shared code where we would "cross" function boundaries.

9 years agoMerge branch 'master' into Defensive
Andrew Bernat [Tue, 23 Aug 2011 19:03:28 +0000 (14:03 -0500)]
Merge branch 'master' into Defensive

9 years agoPPC updates
Andrew Bernat [Tue, 23 Aug 2011 18:57:40 +0000 (13:57 -0500)]
PPC updates

9 years agoThe title page shows correctly in patchapi manual
Wenbin Fang [Tue, 23 Aug 2011 16:45:43 +0000 (11:45 -0500)]
The title page shows correctly in patchapi manual

9 years agoDisable broken modification test, fix merge conflicts.
Andrew Bernat [Tue, 23 Aug 2011 16:15:15 +0000 (11:15 -0500)]
Disable broken modification test, fix merge conflicts.

9 years agoA clean framework for writing patchapi document.
Wenbin Fang [Tue, 23 Aug 2011 16:11:46 +0000 (11:11 -0500)]
A clean framework for writing patchapi document.

9 years agoMerge branch 'Defensive'
Andrew Bernat [Tue, 23 Aug 2011 15:20:07 +0000 (10:20 -0500)]
Merge branch 'Defensive'

Conflicts:
dyninstAPI/h/BPatch_addressSpace.h
dyninstAPI/src/BPatch_addressSpace.C
dyninstAPI/src/Relocation/CodeMover.C
dyninstAPI/src/addressSpace.C
dyninstAPI/src/addressSpace.h
dyninstAPI/src/function.C
parseAPI/src/ParserDetails.C
patchAPI/h/PatchCFG.h
patchAPI/h/PatchMgr.h
patchAPI/h/PatchObject.h
patchAPI/h/common.h
patchAPI/make.module.tmpl
symtabAPI/src/Symtab-edit.C
symtabAPI/src/Symtab-lookup.C
symtabAPI/src/Symtab.C
testsuite/amd64-unknown-freebsd7.2/tuples
testsuite/i386-unknown-freebsd7.2/tuples
testsuite/i386-unknown-linux2.4/tuples
testsuite/x86_64-unknown-linux2.4/tuples

9 years agoPatchAPI documentation
Andrew Bernat [Tue, 23 Aug 2011 15:01:41 +0000 (10:01 -0500)]
PatchAPI documentation

9 years agoFunction wrapping implementation and Symtab extensions for undefined symbols
Andrew Bernat [Wed, 10 Aug 2011 17:47:41 +0000 (12:47 -0500)]
Function wrapping implementation and Symtab extensions for undefined symbols

1) I've implemented function wrapping for the binary rewriter. The interface is:

BPatch_addressSpace::wrapFunction(BPatch_function *original, BPatch_function *wrapper, SymtabAPI::Symbol *clone)

where original is replaced by wrapper, and we create a clone matching the symbol provided in clone. We use a symbol
instead of a string to ensure that we get the name correct (including handling mangling).

This is implemented by performing function replacement original->wrapper, and creating a copy of original named with
the information from the clone symbol. It relies on the new instrumenter.

I've also added the appropriate PatchAPI calls to handle function wrapping.

2) Symtab didn't have a clean interface for accessing undefined symbols, which are necessary for the new function
wrapping code. I've added another parameter to findSymbol to include undefined symbols in a name lookup.

9 years agoThis commit is to remove the "#include" of non-public headers in patchAPI's
Wenbin Fang [Mon, 15 Aug 2011 22:04:51 +0000 (17:04 -0500)]
This commit is to remove the "#include" of non-public headers in patchAPI's
public header. In addition, this commit adds a data member user_commands_ in
Instrumenter class of patchAPI, for the ease of implementing instrumentation
engine plugin.

9 years agoExport PatchAPI public includes; fix compile errors; add undefined symbols to Symtab...
Andrew Bernat [Fri, 12 Aug 2011 21:42:48 +0000 (16:42 -0500)]
Export PatchAPI public includes; fix compile errors; add undefined symbols to Symtab tables (seems harmless)

9 years agoChange function wrapping to take a Symbol for the clone rather than a raw string.
Andrew Bernat [Fri, 12 Aug 2011 20:34:36 +0000 (15:34 -0500)]
Change function wrapping to take a Symbol for the clone rather than a raw string.

9 years agoFix bugs introduced in previous commit
Andrew Bernat [Fri, 12 Aug 2011 19:46:03 +0000 (14:46 -0500)]
Fix bugs introduced in previous commit

9 years agoFunction wrapping fixes
Andrew Bernat [Fri, 12 Aug 2011 19:13:01 +0000 (14:13 -0500)]
Function wrapping fixes

9 years agoFix mapping error when an original address can map to multiple emulated instruction...
Andrew Bernat [Fri, 12 Aug 2011 19:12:38 +0000 (14:12 -0500)]
Fix mapping error when an original address can map to multiple emulated instruction trackers.

9 years agoNew function wrapping prototype
Andrew Bernat [Wed, 10 Aug 2011 17:47:41 +0000 (12:47 -0500)]
New function wrapping prototype

9 years agosensitive-mode emulation of calls
Kevin Roundy [Wed, 10 Aug 2011 17:46:33 +0000 (12:46 -0500)]
sensitive-mode emulation of calls

- Fixes bug in the new way we generate code for calls that are emulated
as push-jumps.
- Also, sink edges and sink nodes should not show up in BPatch CFGs
- Added header files to Dyninst project

9 years agoFix compiler warning
Andrew Bernat [Tue, 9 Aug 2011 16:39:45 +0000 (11:39 -0500)]
Fix compiler warning

9 years agoUpdate PatchAPI tests
Andrew Bernat [Tue, 9 Aug 2011 16:39:19 +0000 (11:39 -0500)]
Update PatchAPI tests

9 years agoFix analysis-based code relocation transformer
Andrew Bernat [Tue, 9 Aug 2011 16:39:12 +0000 (11:39 -0500)]
Fix analysis-based code relocation transformer

9 years agoblock & function removal and relocation fixes
Kevin Roundy [Tue, 9 Aug 2011 15:48:28 +0000 (10:48 -0500)]
block & function removal and relocation fixes

- Block & function removal seem to mostly work now, though block removal
is probably more robust than function removal
- We remove points properly now when blocks & points are deleted
- removed incorrect relocation assert

9 years agofunction & block removal
Kevin Roundy [Fri, 5 Aug 2011 23:51:25 +0000 (18:51 -0500)]
function & block removal

- block removal is fixed up and reasonably well tested
- function removal is untested, but much more complete than it was
- point removal is still highly suspect, not clearing
out instPoint to BPatch_point mappings in BPatch_module

9 years agoRe-enable analysis based relocation transformer.
Andrew Bernat [Wed, 3 Aug 2011 18:43:11 +0000 (13:43 -0500)]
Re-enable analysis based relocation transformer.

9 years agobugfixes and missing files in vcproj files
Kevin Roundy [Wed, 3 Aug 2011 15:21:19 +0000 (10:21 -0500)]
bugfixes and missing files in vcproj files

correct instrumentation of returns in non-defensive libraries
adds missing files to parseAPI and PatchAPI projects
adds and fixes export macros in PatchAPI
implements block removal in PatchAPI (not debugged yet)
removes redundant functions

9 years agoThis commit is to fix the bug due to some typos in PatchAPI:
Wenbin Fang [Tue, 2 Aug 2011 21:28:52 +0000 (16:28 -0500)]
This commit is to fix the bug due to some typos in PatchAPI:

In patchAPI/src/PatchMgr.C, wantXXX functions (e.g., wantFuncs, wantCalls ...)
use bitwise-or to test whether the types parameter passed from findPoints includes
a particular point type, which is incorrect. We should use bitwise-and to test.
So I replace all bitwise-or expression in wantXXX functions with the invocation
of a static function Point::TestType that does bitwise-and operation

9 years agovarious fixes that come up only occasionally
Kevin Roundy [Fri, 29 Jul 2011 17:01:14 +0000 (12:01 -0500)]
various fixes that come up only occasionally

BPatch_point::isDynamic fixes
PatchBlock::containsDynamicCall fixes
BPatch_addressSpace::findOrCreateBPPoint - removed default constructor, since
default caused assert failures; now we'll get compile-failures instead of
runtime crashes
garbage instruction heuristic amplified to include pushes of seg reg's

9 years agoMerge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive
Kevin Roundy [Fri, 29 Jul 2011 16:39:33 +0000 (11:39 -0500)]
Merge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive

9 years agoAdd PatchAPI modification capability
Andrew Bernat [Fri, 29 Jul 2011 16:38:53 +0000 (11:38 -0500)]
Add PatchAPI modification capability

9 years agoUpdate ROSE semantics to handle push <segreg> instructions.
Andrew Bernat [Fri, 29 Jul 2011 16:17:24 +0000 (11:17 -0500)]
Update ROSE semantics to handle push <segreg> instructions.

9 years agoMerge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive
Kevin Roundy [Wed, 27 Jul 2011 20:40:31 +0000 (15:40 -0500)]
Merge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive

Conflicts:
dyninstAPI/src/function.C

9 years agoFix a bug where we could create a Call point for a non-call block.
Andrew Bernat [Wed, 27 Jul 2011 20:16:55 +0000 (15:16 -0500)]
Fix a bug where we could create a Call point for a non-call block.

9 years agoMerge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst...
Kevin Roundy [Wed, 27 Jul 2011 18:42:47 +0000 (13:42 -0500)]
Merge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst into Defensive

9 years agoVarious fixes, half in defensive-mode code, half not
Kevin Roundy [Wed, 27 Jul 2011 18:42:16 +0000 (13:42 -0500)]
Various fixes, half in defensive-mode code, half not

SymEval edge sort: was using <= compare instead of < compare
BPatch_point::isDynamic: was wrong for certain point types
added PatchAPI->dyninst callbacks for block creation, to update point sets
static CF to invalid targets: fixed a couple of bugs related to this
debugging code: so we can turn on trap-based debugging with env. variables
turned on parseAPI callback batching so ParseAPI finalizes data structures and we can query them
PatchBlock::containsDynamicCall: included static CF with bad targets, didn't include dynamic calls with invalid targets

9 years agoMerge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive
Kevin Roundy [Wed, 27 Jul 2011 18:31:37 +0000 (13:31 -0500)]
Merge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive

Conflicts:
dyninstAPI/src/BPatch_point.C

9 years agoCorrectly handle multiple baseTramps that map to the same original address.
Andrew Bernat [Wed, 27 Jul 2011 18:20:52 +0000 (13:20 -0500)]
Correctly handle multiple baseTramps that map to the same original address.

9 years agofix termination assert in syncRunState
Michael Brim [Tue, 26 Jul 2011 21:36:39 +0000 (16:36 -0500)]
fix termination assert in syncRunState

there was a valid check for forcedTermination, but that flag
wasn't being set early enough in int_process::terminate(.

also enables the proccontrol termination tests

9 years agoRemove debug printf
Madhavi Krishnan [Wed, 20 Jul 2011 19:44:07 +0000 (14:44 -0500)]
Remove debug printf

9 years agoFix for Parsing bug. Mark functions with unparsable indirect edge as UNINSTRUMENTABLE
Madhavi Krishnan [Wed, 20 Jul 2011 04:14:50 +0000 (23:14 -0500)]
Fix for Parsing bug. Mark functions with unparsable indirect edge as UNINSTRUMENTABLE

9 years agoVarious fixes to hybrid & standard dyninst code
Kevin Roundy [Fri, 15 Jul 2011 21:20:55 +0000 (16:20 -0500)]
Various fixes to hybrid & standard dyninst code

- block exit instrumentation didn't work, fixed.
- point::isDynamic failed for all non-call instructions
- dyninst block split callback needed for marking blocks as unresolved
or having abruptEnds
- getCallerBlocks was grabbing blocks linked to function entry by
non-call edges
- hybridInstrumentation had poor efficiency owing to
re-instrumentation that was supposed to make things faster, but happened
too often.
- polyEnE nopJumps re-enabled

9 years agoCheck for instruction existence when creating a BPatch_memoryAccess
Andrew Bernat [Fri, 15 Jul 2011 19:23:01 +0000 (14:23 -0500)]
Check for instruction existence when creating a BPatch_memoryAccess

9 years agoImplement block exit instrumentation.
Andrew Bernat [Fri, 15 Jul 2011 16:33:14 +0000 (11:33 -0500)]
Implement block exit instrumentation.

9 years agoMerge branch 'master' of wenbin@feta.cs.wisc.edu:~/devel/dyninst/dyninst
Wenbin Fang [Thu, 14 Jul 2011 22:22:09 +0000 (17:22 -0500)]
Merge branch 'master' of wenbin@feta.cs.wisc.edu:~/devel/dyninst/dyninst

9 years agoFixed compilation failure of dyninst and patchapi on windows.
Wenbin Fang [Thu, 14 Jul 2011 20:57:07 +0000 (15:57 -0500)]
Fixed compilation failure of dyninst and patchapi on windows.

9 years agoFixed compilation failure of dyninst and patchapi on windows.
Wenbin Fang [Thu, 14 Jul 2011 20:57:07 +0000 (15:57 -0500)]
Fixed compilation failure of dyninst and patchapi on windows.

9 years agoAdd a test for inserting new code into the middle of a basic block. Currently will...
Andrew Bernat [Thu, 14 Jul 2011 20:36:38 +0000 (15:36 -0500)]
Add a test for inserting new code into the middle of a basic block. Currently will pass only on x86.

9 years agoMerge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive
Kevin Roundy [Thu, 14 Jul 2011 19:42:53 +0000 (14:42 -0500)]
Merge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive

Conflicts:
dyninstAPI/src/BPatch_function.C

9 years agoMerge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst...
Kevin Roundy [Thu, 14 Jul 2011 19:40:16 +0000 (14:40 -0500)]
Merge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst into Defensive

9 years agosplits, hybrid instrum'n, pads, edges, point-address, consistency checks
Kevin Roundy [Thu, 14 Jul 2011 19:39:06 +0000 (14:39 -0500)]
splits, hybrid instrum'n, pads, edges, point-address, consistency checks

- Block split fixes, weren't adjusting points properly after splits,
among other things.
- Hybrid instrumentation changed a bit, mostly because point->getAddress
doesn't reliably work anymore
- Post-call pads weren't getting added to relocated code, some fixes to
the code for filling in the patches at post-call pads as well.
- Inter-object edges can be added to PatchAPI now
- point->getAddress is unreliable and there were lots of places that
called that, but I eliminated most of them.
- Consistency checks between the patchAPI and parseAPI had some bugs that
I fixed

9 years agoCollected fixes: add PatchAPI export to BPatch_function, fix instPoint::addr_compat...
Andrew Bernat [Wed, 13 Jul 2011 20:20:00 +0000 (15:20 -0500)]
Collected fixes: add PatchAPI export to BPatch_function, fix instPoint::addr_compat to always return an address.

9 years agoMerge branch 'master' into Defensive
Andrew Bernat [Wed, 13 Jul 2011 19:40:25 +0000 (14:40 -0500)]
Merge branch 'master' into Defensive

Conflicts:
testsuite/i386-unknown-nt4.0/tuples

9 years agoAdded functionality: inserting a binary buffer into a preexisting object, now with...
Andrew Bernat [Wed, 13 Jul 2011 18:30:16 +0000 (13:30 -0500)]
Added functionality: inserting a binary buffer into a preexisting object, now with test.

9 years agoFix for replacing instrumented function.
Madhavi Krishnan [Fri, 8 Jul 2011 20:12:02 +0000 (15:12 -0500)]
Fix for replacing instrumented function.

9 years agoFork bugfixes.
Andrew Bernat [Fri, 8 Jul 2011 17:59:38 +0000 (12:59 -0500)]
Fork bugfixes.

9 years agoFix a couple of bugs related to ParseAPI->PatchAPI callbacks
Andrew Bernat [Thu, 7 Jul 2011 21:34:07 +0000 (16:34 -0500)]
Fix a couple of bugs related to ParseAPI->PatchAPI callbacks

9 years agoMerge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive
Kevin Roundy [Thu, 7 Jul 2011 20:37:41 +0000 (15:37 -0500)]
Merge branch 'Defensive' of ssh://git.dyninst.org/pub/dyninst into Defensive

9 years agoFixes compile errors
Kevin Roundy [Thu, 7 Jul 2011 20:07:00 +0000 (15:07 -0500)]
Fixes compile errors

9 years agoFix defensive pads
Andrew Bernat [Thu, 7 Jul 2011 19:53:24 +0000 (14:53 -0500)]
Fix defensive pads

9 years agoRevert "Add new sections to a rewritten binary that contain address mapping info"
Andrew Bernat [Thu, 7 Jul 2011 18:31:49 +0000 (13:31 -0500)]
Revert "Add new sections to a rewritten binary that contain address mapping info"

This reverts commit 89e40a394cc322b721b2c6d9859169cb7d23c21a.

9 years agoAdd new sections to a rewritten binary that contain address mapping info
Andrew Bernat [Thu, 7 Jul 2011 18:28:13 +0000 (13:28 -0500)]
Add new sections to a rewritten binary that contain address mapping info

9 years agoBugfix: prevent double delete of patchAPI callback object
Andrew Bernat [Thu, 7 Jul 2011 15:19:56 +0000 (10:19 -0500)]
Bugfix: prevent double delete of patchAPI callback object

9 years agoMerge branch 'master' of ssh://bill@git.dyninst.org/pub/dyninst
Bill Williams [Wed, 6 Jul 2011 22:48:49 +0000 (17:48 -0500)]
Merge branch 'master' of ssh://bill@git.dyninst.org/pub/dyninst

Conflicts:
testsuite/i386-unknown-nt4.0/tuples

9 years agoAdd test 2-6 on Windows.
Bill Williams [Wed, 6 Jul 2011 21:53:21 +0000 (16:53 -0500)]
Add test 2-6 on Windows.

9 years agoAdd patchAPI modification tests
Andrew Bernat [Wed, 6 Jul 2011 17:36:14 +0000 (12:36 -0500)]
Add patchAPI modification tests

9 years agoImplement edge redirection as a PatchAPI capability
Andrew Bernat [Wed, 6 Jul 2011 17:08:09 +0000 (12:08 -0500)]
Implement edge redirection as a PatchAPI capability

9 years agoMerge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst...
Kevin Roundy [Tue, 5 Jul 2011 21:31:35 +0000 (16:31 -0500)]
Merge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst into Defensive

Conflicts:
patchAPI/src/AddrSpace.C

9 years agoFixes incremental parsing of new edges
Kevin Roundy [Tue, 5 Jul 2011 21:29:41 +0000 (16:29 -0500)]
Fixes incremental parsing of new edges

PatchAPI edges weren't being created in response to incremental parsing,
there were other related bugs.

9 years agoFix several bugs related to block splitting; add CFG modification test to PatchAPI.
Andrew Bernat [Tue, 5 Jul 2011 21:10:58 +0000 (16:10 -0500)]
Fix several bugs related to block splitting; add CFG modification test to PatchAPI.

9 years agoPatchAPI consistency checks; disable ParseThat from building in defensive mode (as...
Andrew Bernat [Tue, 5 Jul 2011 18:33:44 +0000 (13:33 -0500)]
PatchAPI consistency checks; disable ParseThat from building in defensive mode (as it doesn't)

9 years agoFixes block splitting callbacks up through dyninst
Kevin Roundy [Tue, 5 Jul 2011 16:40:00 +0000 (11:40 -0500)]
Fixes block splitting callbacks up through dyninst

Also removes a redundant typedef, PatchFunction had
both blockset and Blockset defined, I eliminated the
first of the two.

9 years agoBlock splitting, outlines needed functionality
Kevin Roundy [Fri, 1 Jul 2011 22:12:57 +0000 (17:12 -0500)]
Block splitting, outlines needed functionality

9 years agoMerge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst...
Kevin Roundy [Fri, 1 Jul 2011 21:45:42 +0000 (16:45 -0500)]
Merge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst into Defensive

9 years agoActually register PatchAPI as a callbackee of ParseAPI...
Andrew Bernat [Fri, 1 Jul 2011 21:37:05 +0000 (16:37 -0500)]
Actually register PatchAPI as a callbackee of ParseAPI...

9 years agoMerge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst...
Kevin Roundy [Fri, 1 Jul 2011 21:31:16 +0000 (16:31 -0500)]
Merge branch 'Defensive' of ssh://coriander.cs.wisc.edu/u/r/o/roundy/devel/g0/dyninst into Defensive