tabort.
Transaction Abort
Forces a transaction failure and rollback.
Details
Forces an abort of the current hardware transaction, rolling back all transactional state and returning control to the point of the most recent tbegin. The RA operand contains the abort code (or a register holding the code) that is reflected in TEXASR. CR0 is set to indicate transaction failure, with CR0[SO] holding abort status. This instruction requires Transactional Memory facility support and can only be executed within a transaction.
Pseudocode Operation
Abort transaction; rollback to most recent tbegin.; CR0[EQ] ← 0; CR0[SO] ← 1; TEXASR abort code ← RA
Programming Note
Use tabort to explicitly abort a transaction and discard all changes. Ensure this is called within a transactional region; otherwise, it will raise an exception. Check CR0 for transaction status before or after calling tabort.
Example
// Force rollback.
Encoding
Operands
-
RA
Abort Code