Overwrites, post-call parse & patch, block splits & deletion
authorKevin Roundy <roundy@cs.wisc.edu>
Tue, 15 Mar 2011 17:59:47 +0000 (12:59 -0500)
committerKevin Roundy <roundy@cs.wisc.edu>
Tue, 15 Mar 2011 17:59:47 +0000 (12:59 -0500)
commitb7da6f8a4bf0b52b625d7dc3669a5b378820515a
tree81b06300aa41f3c3707005f4b5c749b798b6916e
parent468bf6d106ac5063227c0f2ca0f0d1d8401a2ab0
Overwrites, post-call parse & patch, block splits & deletion

- Duplicate-edge parsing won't happen anymore, safeguards added to
CodeObject::ParseNewEdge
- Overwrite reporting is more detailed now, give deleted block sizes
- Respond to code overwrites by finding loops in parent function if
current function has no loops, after exceeding threshold of overwrites
by a given instruction (threshold is currently set to 0)
- Further bugfixes to post-call parsing and padding fixes.  In good
shape now.
- Block deletion wasn't clearing up all edges that left the block
- Block splits are more efficient now, and hopefully not as buggy
20 files changed:
.gitignore
dyninstAPI/h/BPatch_callbacks.h
dyninstAPI/h/BPatch_process.h
dyninstAPI/src/BPatch_process.C
dyninstAPI/src/Parsing.C
dyninstAPI/src/Parsing.h
dyninstAPI/src/block.C
dyninstAPI/src/hybridAnalysis.h
dyninstAPI/src/hybridCallbacks.C
dyninstAPI/src/hybridInstrumentation.C
dyninstAPI/src/hybridOverwrites.C
dyninstAPI/src/instPoint.C
dyninstAPI/src/mapped_object.C
dyninstAPI/src/process.C
dyninstAPI/src/symtab.C
dyninstAPI/src/symtab.h
parseAPI/h/ParseCallback.h
parseAPI/src/CodeObject.C
parseAPI/src/Function.C
parseAPI/src/Parser.C