H A D | tsan_interface_atomic.cpp | 59 template<typename T> T func_xchg(volatile T *v, T op) { in func_xchg() argument 60 T res = __sync_lock_test_and_set(v, op); in func_xchg() 66 template<typename T> T func_add(volatile T *v, T op) { in func_add() argument 67 return __sync_fetch_and_add(v, op); in func_add() 70 template<typename T> T func_sub(volatile T *v, T op) { in func_sub() argument 71 return __sync_fetch_and_sub(v, op); in func_sub() 74 template<typename T> T func_and(volatile T *v, T op) { in func_and() argument 75 return __sync_fetch_and_and(v, op); in func_and() 78 template<typename T> T func_or(volatile T *v, T op) { in func_or() argument 79 return __sync_fetch_and_or(v, o in func_or() 82 func_xor(volatile T * v,T op) func_xor() argument 86 func_nand(volatile T * v,T op) func_nand() argument 98 func_cas(volatile T * v,T cmp,T xch) func_cas() argument 108 func_xchg(volatile a128 * v,a128 op) func_xchg() argument 115 func_add(volatile a128 * v,a128 op) func_add() argument 122 func_sub(volatile a128 * v,a128 op) func_sub() argument 129 func_and(volatile a128 * v,a128 op) func_and() argument 136 func_or(volatile a128 * v,a128 op) func_or() argument 143 func_xor(volatile a128 * v,a128 op) func_xor() argument 150 func_nand(volatile a128 * v,a128 op) func_nand() argument 157 func_cas(volatile a128 * v,a128 cmp,a128 xch) func_cas() argument 235 T v = NoTsanAtomicLoad(a, mo); AtomicLoad() local 250 NoTsanAtomicStore(volatile T * a,T v,morder mo) NoTsanAtomicStore() argument 255 NoTsanAtomicStore(volatile a128 * a,a128 v,morder mo) NoTsanAtomicStore() argument 262 AtomicStore(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicStore() argument 285 AtomicRMW(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicRMW() argument 307 NoTsanAtomicExchange(volatile T * a,T v,morder mo) NoTsanAtomicExchange() argument 312 NoTsanAtomicFetchAdd(volatile T * a,T v,morder mo) NoTsanAtomicFetchAdd() argument 317 NoTsanAtomicFetchSub(volatile T * a,T v,morder mo) NoTsanAtomicFetchSub() argument 322 NoTsanAtomicFetchAnd(volatile T * a,T v,morder mo) NoTsanAtomicFetchAnd() argument 327 NoTsanAtomicFetchOr(volatile T * a,T v,morder mo) NoTsanAtomicFetchOr() argument 332 NoTsanAtomicFetchXor(volatile T * a,T v,morder mo) NoTsanAtomicFetchXor() argument 337 NoTsanAtomicFetchNand(volatile T * a,T v,morder mo) NoTsanAtomicFetchNand() argument 342 AtomicExchange(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicExchange() argument 348 AtomicFetchAdd(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicFetchAdd() argument 354 AtomicFetchSub(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicFetchSub() argument 360 AtomicFetchAnd(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicFetchAnd() argument 366 AtomicFetchOr(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicFetchOr() argument 372 AtomicFetchXor(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicFetchXor() argument 378 AtomicFetchNand(ThreadState * thr,uptr pc,volatile T * a,T v,morder mo) AtomicFetchNand() argument 384 NoTsanAtomicCAS(volatile T * a,T * c,T v,morder mo,morder fmo) NoTsanAtomicCAS() argument 389 NoTsanAtomicCAS(volatile a128 * a,a128 * c,a128 v,morder mo,morder fmo) NoTsanAtomicCAS() argument 401 NoTsanAtomicCAS(volatile T * a,T c,T v,morder mo,morder fmo) NoTsanAtomicCAS() argument 407 AtomicCAS(ThreadState * thr,uptr pc,volatile T * a,T * c,T v,morder mo,morder fmo) AtomicCAS() argument 450 AtomicCAS(ThreadState * thr,uptr pc,volatile T * a,T c,T v,morder mo,morder fmo) AtomicCAS() argument 525 __tsan_atomic8_store(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_store() argument 530 __tsan_atomic16_store(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_store() argument 535 __tsan_atomic32_store(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_store() argument 540 __tsan_atomic64_store(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_store() argument 546 __tsan_atomic128_store(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_store() argument 552 __tsan_atomic8_exchange(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_exchange() argument 557 __tsan_atomic16_exchange(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_exchange() argument 562 __tsan_atomic32_exchange(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_exchange() argument 567 __tsan_atomic64_exchange(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_exchange() argument 573 __tsan_atomic128_exchange(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_exchange() argument 579 __tsan_atomic8_fetch_add(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_fetch_add() argument 584 __tsan_atomic16_fetch_add(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_fetch_add() argument 589 __tsan_atomic32_fetch_add(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_fetch_add() argument 594 __tsan_atomic64_fetch_add(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_fetch_add() argument 600 __tsan_atomic128_fetch_add(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_fetch_add() argument 606 __tsan_atomic8_fetch_sub(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_fetch_sub() argument 611 __tsan_atomic16_fetch_sub(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_fetch_sub() argument 616 __tsan_atomic32_fetch_sub(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_fetch_sub() argument 621 __tsan_atomic64_fetch_sub(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_fetch_sub() argument 627 __tsan_atomic128_fetch_sub(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_fetch_sub() argument 633 __tsan_atomic8_fetch_and(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_fetch_and() argument 638 __tsan_atomic16_fetch_and(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_fetch_and() argument 643 __tsan_atomic32_fetch_and(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_fetch_and() argument 648 __tsan_atomic64_fetch_and(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_fetch_and() argument 654 __tsan_atomic128_fetch_and(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_fetch_and() argument 660 __tsan_atomic8_fetch_or(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_fetch_or() argument 665 __tsan_atomic16_fetch_or(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_fetch_or() argument 670 __tsan_atomic32_fetch_or(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_fetch_or() argument 675 __tsan_atomic64_fetch_or(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_fetch_or() argument 681 __tsan_atomic128_fetch_or(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_fetch_or() argument 687 __tsan_atomic8_fetch_xor(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_fetch_xor() argument 692 __tsan_atomic16_fetch_xor(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_fetch_xor() argument 697 __tsan_atomic32_fetch_xor(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_fetch_xor() argument 702 __tsan_atomic64_fetch_xor(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_fetch_xor() argument 708 __tsan_atomic128_fetch_xor(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_fetch_xor() argument 714 __tsan_atomic8_fetch_nand(volatile a8 * a,a8 v,morder mo) __tsan_atomic8_fetch_nand() argument 719 __tsan_atomic16_fetch_nand(volatile a16 * a,a16 v,morder mo) __tsan_atomic16_fetch_nand() argument 724 __tsan_atomic32_fetch_nand(volatile a32 * a,a32 v,morder mo) __tsan_atomic32_fetch_nand() argument 729 __tsan_atomic64_fetch_nand(volatile a64 * a,a64 v,morder mo) __tsan_atomic64_fetch_nand() argument 735 __tsan_atomic128_fetch_nand(volatile a128 * a,a128 v,morder mo) __tsan_atomic128_fetch_nand() argument 741 __tsan_atomic8_compare_exchange_strong(volatile a8 * a,a8 * c,a8 v,morder mo,morder fmo) __tsan_atomic8_compare_exchange_strong() argument 747 __tsan_atomic16_compare_exchange_strong(volatile a16 * a,a16 * c,a16 v,morder mo,morder fmo) __tsan_atomic16_compare_exchange_strong() argument 753 __tsan_atomic32_compare_exchange_strong(volatile a32 * a,a32 * c,a32 v,morder mo,morder fmo) __tsan_atomic32_compare_exchange_strong() argument 759 __tsan_atomic64_compare_exchange_strong(volatile a64 * a,a64 * c,a64 v,morder mo,morder fmo) __tsan_atomic64_compare_exchange_strong() argument 766 __tsan_atomic128_compare_exchange_strong(volatile a128 * a,a128 * c,a128 v,morder mo,morder fmo) __tsan_atomic128_compare_exchange_strong() argument 773 __tsan_atomic8_compare_exchange_weak(volatile a8 * a,a8 * c,a8 v,morder mo,morder fmo) __tsan_atomic8_compare_exchange_weak() argument 779 __tsan_atomic16_compare_exchange_weak(volatile a16 * a,a16 * c,a16 v,morder mo,morder fmo) __tsan_atomic16_compare_exchange_weak() argument 785 __tsan_atomic32_compare_exchange_weak(volatile a32 * a,a32 * c,a32 v,morder mo,morder fmo) __tsan_atomic32_compare_exchange_weak() argument 791 __tsan_atomic64_compare_exchange_weak(volatile a64 * a,a64 * c,a64 v,morder mo,morder fmo) __tsan_atomic64_compare_exchange_weak() argument 798 __tsan_atomic128_compare_exchange_weak(volatile a128 * a,a128 * c,a128 v,morder mo,morder fmo) __tsan_atomic128_compare_exchange_weak() argument 805 __tsan_atomic8_compare_exchange_val(volatile a8 * a,a8 c,a8 v,morder mo,morder fmo) __tsan_atomic8_compare_exchange_val() argument 811 __tsan_atomic16_compare_exchange_val(volatile a16 * a,a16 c,a16 v,morder mo,morder fmo) __tsan_atomic16_compare_exchange_val() argument 817 __tsan_atomic32_compare_exchange_val(volatile a32 * a,a32 c,a32 v,morder mo,morder fmo) __tsan_atomic32_compare_exchange_val() argument 823 __tsan_atomic64_compare_exchange_val(volatile a64 * a,a64 c,a64 v,morder mo,morder fmo) __tsan_atomic64_compare_exchange_val() argument 830 __tsan_atomic128_compare_exchange_val(volatile a128 * a,a128 c,a128 v,morder mo,morder fmo) __tsan_atomic128_compare_exchange_val() argument [all...] |