Lines Matching refs:SyncClock

16 // SyncClock and ThreadClock implement vector clocks for sync variables
19 // SyncClock contains growable vector clock for currently necessary number of
23 // void ThreadClock::acquire(const SyncClock *src) {
28 // void ThreadClock::release(SyncClock *dst) const {
33 // void ThreadClock::releaseStoreAcquire(SyncClock *sc) const {
41 // void ThreadClock::ReleaseStore(SyncClock *dst) const {
46 // void ThreadClock::acq_rel(SyncClock *dst) {
66 // Thread-safety note: all const operations on SyncClock's are conducted under
67 // a shared lock; all non-const operations on SyncClock's are conducted under
71 // Description of SyncClock state:
130 void ThreadClock::acquire(ClockCache *c, SyncClock *src) {
141 SyncClock::Dirty dirty = src->dirty_[i];
176 void ThreadClock::releaseStoreAcquire(ClockCache *c, SyncClock *sc) {
218 void ThreadClock::release(ClockCache *c, SyncClock *dst) {
265 void ThreadClock::ReleaseStore(ClockCache *c, SyncClock *dst) {
337 void ThreadClock::acq_rel(ClockCache *c, SyncClock *dst) {
343 void ThreadClock::UpdateCurrentThread(ClockCache *c, SyncClock *dst) const {
346 SyncClock::Dirty *dirty = &dst->dirty_[i];
364 bool ThreadClock::IsAlreadyAcquired(const SyncClock *src) const {
368 SyncClock::Dirty dirty = src->dirty_[i];
379 bool ThreadClock::HasAcquiredAfterRelease(const SyncClock *dst) const {
404 SyncClock::SyncClock() {
408 SyncClock::~SyncClock() {
416 void SyncClock::Reset(ClockCache *c) {
422 void SyncClock::ResetImpl() {
432 void SyncClock::Resize(ClockCache *c, uptr nclk) {
474 void SyncClock::FlushDirty() {
485 bool SyncClock::IsShared() const {
497 void SyncClock::Unshare(ClockCache *c) {
501 SyncClock old;
529 ALWAYS_INLINE bool SyncClock::Cachable() const {
542 ALWAYS_INLINE ClockElem &SyncClock::elem(unsigned tid) const {
554 ALWAYS_INLINE uptr SyncClock::capacity() const {
564 ALWAYS_INLINE u32 SyncClock::get_block(uptr bi) const {
570 ALWAYS_INLINE void SyncClock::append_block(u32 idx) {
577 u64 SyncClock::get(unsigned tid) const {
587 u64 SyncClock::get_clean(unsigned tid) const {
591 void SyncClock::DebugDump(int(*printf)(const char *s, ...)) {
603 void SyncClock::Iter::Next() {