|
tlds
Transactional Operations for Linked Data Structures
|
Classes | |
| struct | TypeTestObject |
Functions | |
| static TM_CALLABLE void | DataTypeTest (TM_ARG_ALONE) |
| void | bench_init () |
| void | bench_test (uintptr_t, uint32_t *) |
| bool | bench_verify () |
| void | bench_reparse () |
Variables | |
| TypeTestObject * | tto |
| void bench_init | ( | ) |
BENCHMARKS IMPLEMENT THE FOLLOWING FUNCTIONS
Step 3: Declare an instance of the data type, and provide init, test, and verify functions
| void bench_reparse | ( | ) |
Step 4: Include the code that has the main() function, and the code for creating threads and calling the three above-named functions. Don't forget to provide an arg reparser.
| void bench_test | ( | uintptr_t | , |
| uint32_t * | |||
| ) |
| bool bench_verify | ( | ) |
|
static |
This is just to make sure that all primitive data types are read, written, and read-after-written correctly. You'll need to visually inspect the output to make sure everything is correct, unless you feel like running this in a debugger and watching that the correct templated versions of stm read and stm write are called, and that the values are being stored and retrieved correctly from the log types.
| TypeTestObject* tto |
Step 3: Declare an instance of the data type, and provide init, test, and verify functions