Crate intel_tsx_rtm [−] [src]
This crates provides a simple set of wrappers around Intel's TSX RTM instructions and associated intrinsics.
It needs a C compiler to create a small shim.
This is important because Rust's compiler does not like code with multiple returns.
It does not depend on your compiler having the necessary headers (<immintrin.h>
), and so can work with older compilers and other Operating Systems.
It uses third-party self-modifying code (Andi Kleen's tsx-tools
) to provide runtime detection of CPUs without TSX and fallback to non-hardware paths.
Structs
HardwareMemoryTransactionManager |
A simple wrapper to avoid constantly having to check for support of hardware memory transactions. |
HardwareMemoryTransactionResult |
This structure wraps the results of an execution of a transaction. |
Functions
hsx_transaction⚠ | |
hsx_xtest⚠ |