Transaction abort processing
First Claim
Patent Images
1. A computer program product for facilitating processing in a computing environment, said computer program product comprising:
- a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising;
initiating, by a processor, execution of an outermost transaction via a transaction begin instruction, the outermost transaction causing the processor to enter transactional execution mode, the transaction begin instruction having a field that includes a general register save mask, the general register save mask including one or more indicators to specify which individually selected registers, if any, are to be saved at a beginning of transactional execution mode and restored on an abort;
aborting execution of a transaction of the transactional execution mode, the aborting terminating execution of the transaction prior to completion; and
based on aborting execution of the transaction, identifying one or more selected registers to be restored, the one or more selected registers being less than all of the registers used in transactional processing associated with the transaction, and the one or more selected registers being pre-specified by the general register save mask that is included in the field of the transaction begin instruction, wherein the general register save mask includes at least one indicator corresponding to at least one register, and wherein an indicator of the at least one indicator set to a first value indicates that one or more registers corresponding to that indicator are to be saved during the beginning of transactional execution mode and restored based on the abort of the transaction.
1 Assignment
0 Petitions
Accused Products
Abstract
A transaction executing within a computing environment ends prior to completion; i.e., execution is aborted. Pursuant to aborting execution, a hardware transactional execution CPU mode is exited, and one or more of the following is performed: restoring selected registers; committing nontransactional stores on abort; branching to a transaction abort program status word specified location; setting a condition code and/or abort code; and/or preserving diagnostic information.
-
Citations
20 Claims
-
1. A computer program product for facilitating processing in a computing environment, said computer program product comprising:
a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; initiating, by a processor, execution of an outermost transaction via a transaction begin instruction, the outermost transaction causing the processor to enter transactional execution mode, the transaction begin instruction having a field that includes a general register save mask, the general register save mask including one or more indicators to specify which individually selected registers, if any, are to be saved at a beginning of transactional execution mode and restored on an abort; aborting execution of a transaction of the transactional execution mode, the aborting terminating execution of the transaction prior to completion; and based on aborting execution of the transaction, identifying one or more selected registers to be restored, the one or more selected registers being less than all of the registers used in transactional processing associated with the transaction, and the one or more selected registers being pre-specified by the general register save mask that is included in the field of the transaction begin instruction, wherein the general register save mask includes at least one indicator corresponding to at least one register, and wherein an indicator of the at least one indicator set to a first value indicates that one or more registers corresponding to that indicator are to be saved during the beginning of transactional execution mode and restored based on the abort of the transaction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
12. A computer system for facilitating processing in a computing environment, said computer system comprising:
-
a memory; and a processor in communication with the memory, wherein the computer system is configured to perform a method, said method comprising; initiating, by the processor, execution of an outermost transaction via a transaction begin instruction, the outermost transaction causing the processor to enter transactional execution mode, the transaction begin instruction having a field that includes a general register save mask, the general register save mask including one or more indicators to specify which individually selected registers, if any, are to be saved at a beginning of transactional execution mode and restored on an abort; aborting execution of a transaction of the transactional execution mode, the aborting terminating execution of the transaction prior to completion; and based on aborting execution of the transaction, identifying one or more selected registers to be restored, the one or more selected registers being less than all of the registers used in transactional processing associated with the transaction, and the one or more selected registers being pre-specified by the general register save mask that is included in the field of the transaction begin instruction, wherein the general register save mask includes at least one indicator corresponding to at least one register, and wherein an indicator of the at least one indicator set to a first value indicates that one or more registers corresponding to that indicator are to be saved during the beginning of transactional execution mode and restored based on the abort of the transaction. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A computer-implemented method of facilitating processing in a computing environment, said computer-implemented method comprising:
-
initiating, by a processor, execution of an outermost transaction via a transaction begin instruction, the outermost transaction causing the processor to enter transactional execution mode, the transaction begin instruction having a field that includes a general register save mask, the general register save mask including one or more indicators to specify which individually selected registers, if any, are to be saved at a beginning of transactional execution mode and restored on an abort; aborting execution of a transaction of the transactional execution mode, the aborting terminating execution of the transaction prior to completion; and based on aborting execution of the transaction, identifying one or more selected registers to be restored, the one or more selected registers being less than all of the registers used in transactional processing associated with the transaction, and the one or more selected registers being pre-specified by the general register save mask that is included in the field of the transaction begin instruction, wherein the general register save mask includes at least one indicator corresponding to at least one register, and wherein an indicator of the at least one indicator set to a first value indicates that one or more registers corresponding to that indicator are to be saved during the beginning of transactional execution mode and restored based on the abort of the transaction. - View Dependent Claims (18, 19, 20)
-
Specification