H A D | tsan_interface_atomic.cc | 59 static bool IsLoadOrder(morder mo) { argument 60 return mo == mo_relaxed || mo == mo_consume 61 || mo == mo_acquire || mo == mo_seq_cst; 64 static bool IsStoreOrder(morder mo) { argument 65 return mo == mo_relaxed || mo == mo_release || mo == mo_seq_cst; 68 static bool IsReleaseOrder(morder mo) { argument 72 IsAcquireOrder(morder mo) argument 77 IsAcqRelOrder(morder mo) argument 220 to_mo(morder mo) argument 234 NoTsanAtomicLoad(const volatile T *a, morder mo) argument 239 NoTsanAtomicLoad(const volatile a128 *a, morder mo) argument 246 AtomicLoad(ThreadState *thr, uptr pc, const volatile T *a, morder mo) argument 264 NoTsanAtomicStore(volatile T *a, T v, morder mo) argument 269 NoTsanAtomicStore(volatile a128 *a, a128 v, morder mo) argument 276 AtomicStore(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 299 AtomicRMW(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 321 NoTsanAtomicExchange(volatile T *a, T v, morder mo) argument 326 NoTsanAtomicFetchAdd(volatile T *a, T v, morder mo) argument 331 NoTsanAtomicFetchSub(volatile T *a, T v, morder mo) argument 336 NoTsanAtomicFetchAnd(volatile T *a, T v, morder mo) argument 341 NoTsanAtomicFetchOr(volatile T *a, T v, morder mo) argument 346 NoTsanAtomicFetchXor(volatile T *a, T v, morder mo) argument 351 NoTsanAtomicFetchNand(volatile T *a, T v, morder mo) argument 356 AtomicExchange(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 362 AtomicFetchAdd(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 368 AtomicFetchSub(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 374 AtomicFetchAnd(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 380 AtomicFetchOr(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 386 AtomicFetchXor(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 392 AtomicFetchNand(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) argument 398 NoTsanAtomicCAS(volatile T *a, T *c, T v, morder mo, morder fmo) argument 403 NoTsanAtomicCAS(volatile a128 *a, a128 *c, a128 v, morder mo, morder fmo) argument 415 NoTsanAtomicCAS(volatile T *a, T c, T v, morder mo, morder fmo) argument 421 AtomicCAS(ThreadState *thr, uptr pc, volatile T *a, T *c, T v, morder mo, morder fmo) argument 454 AtomicCAS(ThreadState *thr, uptr pc, volatile T *a, T c, T v, morder mo, morder fmo) argument 461 NoTsanAtomicFence(morder mo) argument 465 AtomicFence(ThreadState *thr, uptr pc, morder mo) argument 490 ScopedAtomic(ThreadState *thr, uptr pc, const volatile void *a, morder mo, const char *func) argument 504 AtomicStatInc(ThreadState *thr, uptr size, morder mo, StatType t) argument 522 __tsan_atomic8_load(const volatile a8 *a, morder mo) argument 527 __tsan_atomic16_load(const volatile a16 *a, morder mo) argument 532 __tsan_atomic32_load(const volatile a32 *a, morder mo) argument 537 __tsan_atomic64_load(const volatile a64 *a, morder mo) argument 543 __tsan_atomic128_load(const volatile a128 *a, morder mo) argument 549 __tsan_atomic8_store(volatile a8 *a, a8 v, morder mo) argument 554 __tsan_atomic16_store(volatile a16 *a, a16 v, morder mo) argument 559 __tsan_atomic32_store(volatile a32 *a, a32 v, morder mo) argument 564 __tsan_atomic64_store(volatile a64 *a, a64 v, morder mo) argument 570 __tsan_atomic128_store(volatile a128 *a, a128 v, morder mo) argument 576 __tsan_atomic8_exchange(volatile a8 *a, a8 v, morder mo) argument 581 __tsan_atomic16_exchange(volatile a16 *a, a16 v, morder mo) argument 586 __tsan_atomic32_exchange(volatile a32 *a, a32 v, morder mo) argument 591 __tsan_atomic64_exchange(volatile a64 *a, a64 v, morder mo) argument 597 __tsan_atomic128_exchange(volatile a128 *a, a128 v, morder mo) argument 603 __tsan_atomic8_fetch_add(volatile a8 *a, a8 v, morder mo) argument 608 __tsan_atomic16_fetch_add(volatile a16 *a, a16 v, morder mo) argument 613 __tsan_atomic32_fetch_add(volatile a32 *a, a32 v, morder mo) argument 618 __tsan_atomic64_fetch_add(volatile a64 *a, a64 v, morder mo) argument 624 __tsan_atomic128_fetch_add(volatile a128 *a, a128 v, morder mo) argument 630 __tsan_atomic8_fetch_sub(volatile a8 *a, a8 v, morder mo) argument 635 __tsan_atomic16_fetch_sub(volatile a16 *a, a16 v, morder mo) argument 640 __tsan_atomic32_fetch_sub(volatile a32 *a, a32 v, morder mo) argument 645 __tsan_atomic64_fetch_sub(volatile a64 *a, a64 v, morder mo) argument 651 __tsan_atomic128_fetch_sub(volatile a128 *a, a128 v, morder mo) argument 657 __tsan_atomic8_fetch_and(volatile a8 *a, a8 v, morder mo) argument 662 __tsan_atomic16_fetch_and(volatile a16 *a, a16 v, morder mo) argument 667 __tsan_atomic32_fetch_and(volatile a32 *a, a32 v, morder mo) argument 672 __tsan_atomic64_fetch_and(volatile a64 *a, a64 v, morder mo) argument 678 __tsan_atomic128_fetch_and(volatile a128 *a, a128 v, morder mo) argument 684 __tsan_atomic8_fetch_or(volatile a8 *a, a8 v, morder mo) argument 689 __tsan_atomic16_fetch_or(volatile a16 *a, a16 v, morder mo) argument 694 __tsan_atomic32_fetch_or(volatile a32 *a, a32 v, morder mo) argument 699 __tsan_atomic64_fetch_or(volatile a64 *a, a64 v, morder mo) argument 705 __tsan_atomic128_fetch_or(volatile a128 *a, a128 v, morder mo) argument 711 __tsan_atomic8_fetch_xor(volatile a8 *a, a8 v, morder mo) argument 716 __tsan_atomic16_fetch_xor(volatile a16 *a, a16 v, morder mo) argument 721 __tsan_atomic32_fetch_xor(volatile a32 *a, a32 v, morder mo) argument 726 __tsan_atomic64_fetch_xor(volatile a64 *a, a64 v, morder mo) argument 732 __tsan_atomic128_fetch_xor(volatile a128 *a, a128 v, morder mo) argument 738 __tsan_atomic8_fetch_nand(volatile a8 *a, a8 v, morder mo) argument 743 __tsan_atomic16_fetch_nand(volatile a16 *a, a16 v, morder mo) argument 748 __tsan_atomic32_fetch_nand(volatile a32 *a, a32 v, morder mo) argument 753 __tsan_atomic64_fetch_nand(volatile a64 *a, a64 v, morder mo) argument 759 __tsan_atomic128_fetch_nand(volatile a128 *a, a128 v, morder mo) argument 765 __tsan_atomic8_compare_exchange_strong(volatile a8 *a, a8 *c, a8 v, morder mo, morder fmo) argument 771 __tsan_atomic16_compare_exchange_strong(volatile a16 *a, a16 *c, a16 v, morder mo, morder fmo) argument 777 __tsan_atomic32_compare_exchange_strong(volatile a32 *a, a32 *c, a32 v, morder mo, morder fmo) argument 783 __tsan_atomic64_compare_exchange_strong(volatile a64 *a, a64 *c, a64 v, morder mo, morder fmo) argument 790 __tsan_atomic128_compare_exchange_strong(volatile a128 *a, a128 *c, a128 v, morder mo, morder fmo) argument 797 __tsan_atomic8_compare_exchange_weak(volatile a8 *a, a8 *c, a8 v, morder mo, morder fmo) argument 803 __tsan_atomic16_compare_exchange_weak(volatile a16 *a, a16 *c, a16 v, morder mo, morder fmo) argument 809 __tsan_atomic32_compare_exchange_weak(volatile a32 *a, a32 *c, a32 v, morder mo, morder fmo) argument 815 __tsan_atomic64_compare_exchange_weak(volatile a64 *a, a64 *c, a64 v, morder mo, morder fmo) argument 822 __tsan_atomic128_compare_exchange_weak(volatile a128 *a, a128 *c, a128 v, morder mo, morder fmo) argument 829 __tsan_atomic8_compare_exchange_val(volatile a8 *a, a8 c, a8 v, morder mo, morder fmo) argument 835 __tsan_atomic16_compare_exchange_val(volatile a16 *a, a16 c, a16 v, morder mo, morder fmo) argument 841 __tsan_atomic32_compare_exchange_val(volatile a32 *a, a32 c, a32 v, morder mo, morder fmo) argument 847 __tsan_atomic64_compare_exchange_val(volatile a64 *a, a64 c, a64 v, morder mo, morder fmo) argument 854 __tsan_atomic128_compare_exchange_val(volatile a128 *a, a128 c, a128 v, morder mo, morder fmo) argument 861 __tsan_atomic_thread_fence(morder mo) argument 867 __tsan_atomic_signal_fence(morder mo) argument [all...] |