Patent ID: 10474469

Abstract:
An apparatus and method are provided for determining a recovery point from which to resume instruction execution following handling of an unexpected change in instruction flow. The apparatus comprises processing circuitry having an associated instruction set architecture, and arranged to execute software comprising instructions defined by the instruction set architecture, and control circuitry for controlling operation of the processing circuitry according to constraints defined by the instruction set architecture. The instruction set architecture defines a default recovery point constraint for determining a recovery point from which to resume instruction execution following handling of an unexpected change in instruction flow. The control circuitry is responsive to information derived from the software executing on the processing circuitry to detect a recovery point relaxation condition, and responsive to the recovery point relaxation condition, to allow determination of the recovery point unconstrained by the default recovery point constraint. Hence, the described techniques provide a mechanism by which the ISA may allow the software to inform the hardware of situations where the recovery point constraint can be relaxed, in such situations this enabling the processing circuitry to potentially execute the code with increased performance and/or reduced power consumption.