tlds
Transactional Operations for Linked Data Structures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
stm::id_version_t Union Reference

#include <metadata.hpp>

Collaboration diagram for stm::id_version_t:

Public Attributes

struct {
   uintptr_t   lock:1
 
   uintptr_t   id:(8*sizeof(uintptr_t))-1
 
fields
 
uintptr_t all
 

Detailed Description

id_version_t uses the msb as the lock bit. If the msb is zero, treat the word as a version number. Otherwise, treat it as a struct with the lower 8 bits giving the ID of the lock-holding thread.

Member Data Documentation

uintptr_t stm::id_version_t::all
struct { ... } stm::id_version_t::fields
uintptr_t stm::id_version_t::id
uintptr_t stm::id_version_t::lock

The documentation for this union was generated from the following file: