`FunctionCallIdentification`: detect link register
This commit extendes the FunctionCallIdentification pass to identify, for each function call, where the return address is stored, i.e., the link register. If the the return address is stored on the top of the stack then the link register is `nullptr`. This information is encoded as an extra argument to the marker `function_call`. This commit also makes the pass ignore dispatcher-related basic blocks and ensures that calls to `function_call` are placed *before* calls to `exitTB` so that they won't get purged.
parent
030f4c66
Please register or sign in to comment