US 9,811,337 B2
Transaction abort processing
Dan F. Greiner, San Jose, CA (US); Christian Jacobi, Poughkeepsie, NY (US); and Timothy J. Slegel, Staatsburg, NY (US)
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION, Armonk, NY (US)
Filed by INTERNATIONAL BUSINESS MACHINES CORPORATION, Armonk, NY (US)
Filed on Mar. 31, 2016, as Appl. No. 15/86,473.
Application 15/086,473 is a continuation of application No. 13/790,020, filed on Mar. 8, 2013, granted, now 9,354,925.
Application 13/790,020 is a continuation of application No. 13/524,877, filed on Jun. 15, 2012, granted, now 9,336,046.
Prior Publication US 2016/0216968 A1, Jul. 28, 2016
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/46 (2006.01); G06F 9/30 (2006.01); G06F 9/38 (2006.01)
CPC G06F 9/30098 (2013.01) [G06F 9/3004 (2013.01); G06F 9/30087 (2013.01); G06F 9/30145 (2013.01); G06F 9/3834 (2013.01); G06F 9/3842 (2013.01); G06F 9/3857 (2013.01); G06F 9/3861 (2013.01); G06F 9/466 (2013.01)] 20 Claims
OG exemplary drawing
 
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.