Set register space in RelDataPatch
authorSunny Shah <shah28@wisc.edu>
Mon, 24 Apr 2017 22:12:49 +0000 (17:12 -0500)
committerSasha @leela <sasha@cs.wisc.edu>
Thu, 31 Aug 2017 21:51:03 +0000 (16:51 -0500)
commit61069b848092dac5d85618cf79bd6d552a4a1ed1
tree38d2974be5e4667d4a2e4e3b7cefb8f7264197c5
parent3d8f78fcb29edff4e573d08e05e2f8db7c46c603
Set register space in RelDataPatch

The register space for the codeGen object used in RelDataPatch needs to be set before it is passed to insnCodeGen, since the latter uses it when getting a scratch register.

If the codeGen point in RelDataPatch is null, a new point needs to be generated referencing the previous instruction. This requires pointers to the function and block instances. To store these pointe
ers from RelDataWidget, two new fields (and their setters) are added to RelDataPatch.
dataflowAPI/src/ABI.C
dyninstAPI/src/Relocation/Widgets/RelDataWidget.C
dyninstAPI/src/Relocation/Widgets/RelDataWidget.h