| Date: | Sat, 30 Dec 2017 19:48:45 -0500 | 
|---|---|
| From: | Rohit Poduri <poduri.rohit@xxxxxxxxx> | 
| Subject: | [DynInst_API:] modify register contents in dyninst | 
| Hi everyone, I am using dyninst to do some static instrumentation by patching instructions and inserting function call instrumentation snippets on x86_64 . The task I am currently trying to do requires manipulation of a register. The sequence of my task is as follows- 1) Search for the appropriate point in the binary 2) Make a function call which returns some value 3) Put this value into a particular register (like rax) I am currently implementing it using some wrapper function which calls the fucntion in step 2 and then has an assembly statement to put that value into the register. However I am not getting the value as I am expecting, as the next instruction after my point can see the value I moved into rax. I suspect this may be due to the save/restore register process of dyninst. Is there any way I can get my task done. I am searching for 2 methods- 1) A high level API in dyninst which can do this task 2) Alter the save restore code so that it dosen't modify the contents of the register I am altering in step 3 If method 2 is feasible, I would like to know which section of the source code saves and restores the registers. Any help would be appreciated. Thanks, Rohit | 
| [← Prev in Thread] | Current Thread | [Next in Thread→] | 
|---|---|---|
| 
 | ||
| Previous by Date: | [DynInst_API:] [dyninst/dyninst] bd74a8: Clean unwanted files, Xiaozhu Meng | 
|---|---|
| Next by Date: | , (nil) | 
| Previous by Thread: | Re: [DynInst_API:] measuring execution time, Bill Williams | 
| Next by Thread: | [DynInst_API:] preparation for 9.3 point releases, Bill Williams | 
| Indexes: | [Date] [Thread] |