Linux Assemblycollection of fast libraries

Transactional Synchronization Extensions (TSX) instructions set

Transactional Synchronization Extensions (TSX) allow the processor to determine dynamically whether threads need to serialize through lock-protected critical sections, and to perform serialization only when required. This lets the hardware expose and exploit concurrency hidden in an application due to dynamically unnecessary synchronization through a technique known as lock elision.

With lock elision, the hardware executes the programmer-specified critical sections (also referred to as transactional regions) transactionally. In such an execution, the lock variable is only read within the transactional region; it is not written to (and therefore not acquired) with the expectation that the lock variable remains unchanged after the transactional region, thus exposing concurrency.

Tip: For detailed information about each instruction please read: Intel Architectures Software Developer’s Manual Volume 2: Instruction Set Reference, A-Z

Instruction📄Meaning
XACQUIREPrefix hint to the beginning of an HLE transaction region
XRELEASEPrefix hint to the end of an HLE transaction region
XBEGINℹ️Transaction begin of an RTM transaction region
XENDℹ️Transaction end of an RTM transaction region
XABORTℹ️Abort an RTM transaction execution
XTESTℹ️Test if executing in a transactional region
XRESLDTRKℹ️Resume tracking load addresses
XSUSLDTRKℹ️Suspend tracking load addresses
Copyright 2012-2026 Eugene Zamlinsky. All rights reserved.