x86 TSX intrinsics, compatible with the GCC API.
More...
Go to the source code of this file.
x86 TSX intrinsics, compatible with the GCC API.
To use:
{
}
else
static unsigned int _xbegin(void)
Definition in file tsx.h.
◆ _XBEGIN_STARTED
#define _XBEGIN_STARTED (~0u) |
Definition at line 26 of file tsx.h.
◆ _XBEGIN_UD
Definition at line 27 of file tsx.h.
◆ _XABORT_EXPLICIT
#define _XABORT_EXPLICIT (1u << 0) |
Definition at line 28 of file tsx.h.
◆ _XABORT_RETRY
#define _XABORT_RETRY (1u << 1) |
Definition at line 29 of file tsx.h.
◆ _XABORT_CONFLICT
#define _XABORT_CONFLICT (1u << 2) |
Definition at line 30 of file tsx.h.
◆ _XABORT_CAPACITY
#define _XABORT_CAPACITY (1u << 3) |
Definition at line 31 of file tsx.h.
◆ _XABORT_DEBUG
#define _XABORT_DEBUG (1u << 4) |
Definition at line 32 of file tsx.h.
◆ _XABORT_NESTED
#define _XABORT_NESTED (1u << 5) |
Definition at line 33 of file tsx.h.
◆ _XABORT_CODE
#define _XABORT_CODE |
( |
|
x | ) |
(((x) >> 24) & 0xff) |
Definition at line 34 of file tsx.h.
◆ _xabort
Value: do { \
asm volatile (".byte 0xc6, 0xf8, %c0" \
:: "N" (code) : "memory"); \
unreachable(); \
} while ( 0 )
Definition at line 75 of file tsx.h.
◆ _xbegin()
static unsigned int _xbegin |
( |
void |
| ) |
|
|
inlinestatic |
Definition at line 36 of file tsx.h.
◆ _xbegin_safe()
static unsigned int _xbegin_safe |
( |
void |
| ) |
|
|
inlinestatic |
Definition at line 47 of file tsx.h.
◆ _xtest()
static int _xtest |
( |
void |
| ) |
|
|
inlinestatic |
Definition at line 60 of file tsx.h.
◆ _xend()
static void _xend |
( |
void |
| ) |
|
|
inlinestatic |
Definition at line 82 of file tsx.h.