TCOMMIT

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.

System
(FEAT_TME)

313029282726252423222120191817161514131211109876543210
11010101000000110011000001111111
CRmop2Rt

TCOMMIT

if !IsFeatureImplemented(FEAT_TME) then UNDEFINED;

Operation

if !IsTMEEnabled() then UNDEFINED; if TSTATE.depth == 0 then UNDEFINED; if TSTATE.depth == 1 then CommitTransactionalWrites(); ClearExclusiveLocal(ProcessorID()); TSTATE.depth = TSTATE.depth - 1;


Internal version only: aarchmrs v2023-12_rel, pseudocode v2023-12_rel, sve v2023-12_rel ; Build timestamp: 2023-12-15T16:46

Copyright © 2010-2023 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.