TCOMMIT
Commit current transaction
This instruction commits the current transaction. If the current transaction
is an outer transaction, then Transactional state is exited, and all state
modifications performed transactionally are committed to the architectural
state. TCOMMIT takes no inputs and returns no value.
Execution of TCOMMIT is UNDEFINED in Non-transactional state.
1
1
0
1
0
1
0
1
0
0
0
0
0
0
1
1
0
0
1
1
0
0
0
0
0
1
1
1
1
1
1
1
TCOMMIT
if !IsFeatureImplemented(FEAT_TME) then UNDEFINED;
if !IsTMEEnabled() then UNDEFINED;
if TSTATE.depth == 0 then
UNDEFINED;
if TSTATE.depth == 1 then
CommitTransactionalWrites();
ClearExclusiveLocal(ProcessorID());
TSTATE.depth = TSTATE.depth - 1;