A
data processing apparatus (110) for executing an application with runtime integrity proof is provided. The
data processing apparatus (110) comprises
processing circuitry (111) for executing a modified version (143) of an application
machine code (141) defining the application. The modified version (143) of the application
machine code (141) includes one or more direct or
indirect branch instructions, and one or more
machine code instructions, the one or more
machine code instructions being one or more target instructions for the one or more direct or
indirect branch instructions. During the execution of the modified version (143) of the application
machine code (141), the
processing circuitry (111) is further configured to update a first register value in a first register and a second register value in a second register, and to update the modified version (143) of the application
machine code (141) based on the first register value and the second register value. And / or triggering an exception if the one or more direct or
indirect branch instructions are for instructions of the modified version (143) of the application machine code (141) instead of the one or more target instructions.