Intra-instructional transaction abort handling
AssigneeInternational Business Machines Corporation
InventorsBrenton F. Belmar, Mark S. Farrell, Christian Jacobi, Timothy J. Slegel
Life of this patent
Estimating the term…
Abstract
Embodiments relate to intra-instructional transaction abort handling. An aspect includes using an emulation routine to execute an instruction within a transaction. The instruction includes at least one unit of operation. The transaction effectively delays committing stores to memory until the transaction has completed successfully. After receiving an abort indication, emulation of the instruction is terminated prior to completing the execution of the instruction. The instruction is terminated after the emulation routine completes any previously initiated unit of operation of the instruction.
Claims7
A system for intra-instructional transaction abort handling, the system comprising:
- a processing circuit comprising transactional processing logic that determines whether an instruction is part of a transaction or non-transactional, an architected facility, and an architected facility buffer comprising one or more rename registers that store data temporarily until instruction completion moves the data to a targeted location, the processing circuit configured to perform a method comprising:
- using an emulation routine to execute an instruction within a transaction, the instruction comprising at least one unit of operation, the transaction effectively delaying committing stores to memory until successful completion of the transaction;
- setting a transaction block abort (TXBA) flag based on determining that the emulation of the instruction has made updates to one or more of:
- the architected facility and the architected facility buffer;
- and
- based on receiving an abort indication, terminating the emulation of the instruction prior to completing the execution of the instruction, the terminating performed after completing, by the emulation routine, any previously initiated unit of operation of the instruction, wherein the terminating of the emulation of the instruction comprises:
- rolling back any storage updates performed during the emulation of the instruction based on determining that the emulation of the instruction has made no updates to the architected facility and no updates to the architected facility buffer;
- pausing the terminating of the emulation of the instruction after determining that the TXBA flag is set until all previously initiated units of operation of the instruction of the transaction have completed the emulation;
- resetting the TXBA flag based on executing an end of emulation routine instruction or an emulation execution control reset transaction block abort instruction to start a new unit of operation;
- and
- resuming the terminating of the emulation of the instruction based on determining the TXBA flag has been cleared.
Dependencies are inferred from the claim text.