×

Transaction begin/end instructions

  • US 10,185,588 B2
  • Filed: 05/23/2016
  • Issued: 01/22/2019
  • Est. Priority Date: 06/15/2012
  • Status: Active Grant
First Claim
Patent Images

1. A computer program product for executing a machine instruction 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;

    obtaining a machine instruction for operation, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising;

    an operation code to specify a transaction begin operation;

    one or more fields to specify a first operand address; and

    a control field, the control field comprising a general register save mask to indicate one or more pairs of registers to be saved at a beginning of a transaction and restored on an abort; and

    executing the machine instruction, the executing comprising;

    determining, using a field of the machine instruction, whether the transaction to be initiated by the machine instruction is a constrained transaction or a nonconstrained transaction;

    based on the field being one value, initiating a constrained transaction, the constrained transaction having two or more restrictions associated therewith, and setting a condition code to indicate successful execution of the machine instruction, the two or more restrictions including restrictions selected from the group consisting of;

    a subset of general instructions is available, a limited number of instructions is to be executed, a limited number of storage-operand locations is to be accessed, and the constrained transaction is limited to a single nesting level; and

    based on the field being another value;

    initiating a nonconstrained transaction;

    using the first operand address to designate a location of a transaction diagnostic block to store diagnostic information based on the nonconstrained transaction being aborted; and

    setting a condition code to indicate successful execution of the machine instruction.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×