Function intel_tsx_rtm::intrinsics::_xbegin
[−]
[src]
pub unsafe fn _xbegin() -> u32
Begin a transaction.
Will raise the signal SIGILL
(an illegal instruction abort) on CPUs without Intel TSX support, so be careful.
Can appear to execute twice, a bit like setjmp
/ longjmp
or fork()
.
If a transaction has started, then the return code is _XBEGIN_STARTED
.
If a transaction is committed successfully, then the return code will be zero, 0.
If a transaction aborts or rolls back, execution restarts here with all memory effects undone and a return code that is not _XBEGIN_STARTED
; in which case, the return code is a mix of a bit set of flags and a result code.