Convert predicated execution to non-predicated execution
From zhao...@google.com on October 24, 2014 11:27:23
Architecture like ARM supports predicated instructions, which causes many problems for current DynamoRIO tools.
For example, instr_writes_to_reg is often used for register liveness analysis and finding dead registers. However, due to the predicated execution, those registers might not be dead during the execution if the condition is false. Similar problems happen to the eflags analysis too. Also, DynamoRIO based code coverage will also have the problem, as the code brought to code cache might not be executed at all.
So one potential solution is to convert predicated instructions to non-predicated instructions guarded with conditional branch, which would makes the analysis easier.
Original issue: http://code.google.com/p/dynamorio/issues/detail?id=1555