| /llvm-project-15.0.7/llvm/test/MC/WebAssembly/ |
| H A D | atomics-encodings.s | 7 memory.atomic.notify 0 9 memory.atomic.wait32 0 11 memory.atomic.wait64 0 14 atomic.fence 17 i32.atomic.load 0 19 i64.atomic.load 4 21 i32.atomic.load8_u 48 25 i64.atomic.load8_u 0 32 i32.atomic.store 0 34 i64.atomic.store 8 [all …]
|
| /llvm-project-15.0.7/clang/test/OpenMP/ |
| H A D | atomic_messages.cpp | 12 #pragma omp atomic in foo() 20 #pragma omp atomic in foo() 172 #pragma omp atomic in update() 188 #pragma omp atomic in update() 192 #pragma omp atomic in update() 196 #pragma omp atomic in update() 200 #pragma omp atomic in update() 204 #pragma omp atomic in update() 208 #pragma omp atomic in update() 212 #pragma omp atomic in update() [all …]
|
| H A D | atomic_messages.c | 18 #pragma omp atomic in foo() 26 #pragma omp atomic in foo() 125 #pragma omp atomic in updateint() 129 #pragma omp atomic in updateint() 145 #pragma omp atomic in updateint() 149 #pragma omp atomic in updateint() 157 #pragma omp atomic in updateint() 161 #pragma omp atomic in updateint() 165 #pragma omp atomic in updateint() 169 #pragma omp atomic in updateint() [all …]
|
| H A D | atomic_ast_print.cpp | 27 #pragma omp atomic in foo() 29 #pragma omp atomic read in foo() 31 #pragma omp atomic write in foo() 33 #pragma omp atomic update in foo() 85 #pragma omp atomic in foo() 87 #pragma omp atomic read in foo() 114 #pragma omp atomic in foo() 145 #pragma omp atomic read in foo() 900 #pragma omp atomic in main() 958 #pragma omp atomic in main() [all …]
|
| H A D | atomic_compare_codegen.cpp | 29 #pragma omp atomic compare in foo() 31 #pragma omp atomic compare in foo() 33 #pragma omp atomic compare in foo() 35 #pragma omp atomic compare in foo() 37 #pragma omp atomic compare in foo() 40 #pragma omp atomic compare in foo() 43 #pragma omp atomic compare in foo() 46 #pragma omp atomic compare in foo() 50 #pragma omp atomic compare in foo() 52 #pragma omp atomic compare in foo() [all …]
|
| H A D | atomic_update_codegen.cpp | 86 #pragma omp atomic in main() 89 #pragma omp atomic in main() 95 #pragma omp atomic in main() 116 #pragma omp atomic in main() 135 #pragma omp atomic in main() 165 #pragma omp atomic in main() 184 #pragma omp atomic in main() 192 #pragma omp atomic in main() 213 #pragma omp atomic in main() 255 #pragma omp atomic in main() [all …]
|
| H A D | atomic_write_codegen.c | 87 #pragma omp atomic write in main() 91 #pragma omp atomic write in main() 99 #pragma omp atomic write in main() 103 #pragma omp atomic write in main() 107 #pragma omp atomic write in main() 111 #pragma omp atomic write in main() 115 #pragma omp atomic write in main() 119 #pragma omp atomic write in main() 123 #pragma omp atomic write in main() 127 #pragma omp atomic write in main() [all …]
|
| H A D | atomic_read_codegen.c | 89 #pragma omp atomic read in main() 93 #pragma omp atomic read in main() 97 #pragma omp atomic read in main() 101 #pragma omp atomic read in main() 105 #pragma omp atomic read in main() 109 #pragma omp atomic read in main() 113 #pragma omp atomic read in main() 117 #pragma omp atomic read in main() 121 #pragma omp atomic read in main() 125 #pragma omp atomic read in main() [all …]
|
| H A D | atomic_capture_codegen.cpp | 96 #pragma omp atomic capture in main() 101 #pragma omp atomic capture in main() 105 #pragma omp atomic capture in main() 110 #pragma omp atomic capture in main() 129 #pragma omp atomic capture in main() 145 #pragma omp atomic capture in main() 150 #pragma omp atomic capture in main() 166 #pragma omp atomic capture in main() 182 #pragma omp atomic capture in main() 198 #pragma omp atomic capture in main() [all …]
|
| /llvm-project-15.0.7/libcxx/test/std/atomics/stdatomic.h.syn/ |
| H A D | types.compile.pass.cpp | 140 static_assert(std::is_same_v<std::atomic<char>, _Atomic(char)>); in f() 141 static_assert(std::is_same_v<std::atomic<int>, _Atomic(int)>); in f() 154 static_assert(std::is_same_v<std::atomic<bool>, ::atomic_bool>); in f() 155 static_assert(std::is_same_v<std::atomic<char>, ::atomic_char>); in f() 158 static_assert(std::is_same_v<std::atomic<short>, ::atomic_short>); in f() 160 static_assert(std::is_same_v<std::atomic<int>, ::atomic_int>); in f() 162 static_assert(std::is_same_v<std::atomic<long>, ::atomic_long>); in f() 164 static_assert(std::is_same_v<std::atomic<long long>, ::atomic_llong>); in f() 168 static_assert(std::is_same_v<std::atomic<char8_t>, ::atomic_char8_t>); in f() 173 static_assert(std::is_same_v<std::atomic<wchar_t>, ::atomic_wchar_t>); in f() [all …]
|
| /llvm-project-15.0.7/llvm/test/Analysis/MemoryDependenceAnalysis/ |
| H A D | reorder-over-store-atomic.ll | 16 %l1 = load atomic i32, i32* @w unordered, align 4 17 %lv = load atomic i32, i32* @u seq_cst, align 4 18 %l2 = load atomic i32, i32* @w unordered, align 4 34 %lv = load atomic i32, i32* @u acquire, align 4 47 store atomic i32 %x, i32* @u seq_cst, align 4 59 store atomic i32 %x, i32* @u release, align 4 73 store atomic i32 %x, i32* @u seq_cst, align 4 74 store atomic i32 0, i32* @w unordered, align 4 86 store atomic i32 %x, i32* @u release, align 4 119 store atomic i32 %x, i32* @u seq_cst, align 4 [all …]
|
| /llvm-project-15.0.7/libcxx/test/std/atomics/atomics.types.generic/ |
| H A D | integral_typedefs.pass.cpp | 46 static_assert((std::is_same<std::atomic<char>, std::atomic_char>::value), ""); in main() 47 static_assert((std::is_same<std::atomic<signed char>, std::atomic_schar>::value), ""); in main() 49 static_assert((std::is_same<std::atomic<short>, std::atomic_short>::value), ""); in main() 51 static_assert((std::is_same<std::atomic<int>, std::atomic_int>::value), ""); in main() 52 static_assert((std::is_same<std::atomic<unsigned int>, std::atomic_uint>::value), ""); in main() 53 static_assert((std::is_same<std::atomic<long>, std::atomic_long>::value), ""); in main() 55 static_assert((std::is_same<std::atomic<long long>, std::atomic_llong>::value), ""); in main() 58 static_assert((std::is_same<std::atomic<wchar_t>, std::atomic_wchar_t>::value), ""); in main() 61 static_assert((std::is_same<std::atomic<char8_t>, std::atomic_char8_t>::value), ""); in main() 63 static_assert((std::is_same<std::atomic<char16_t>, std::atomic_char16_t>::value), ""); in main() [all …]
|
| H A D | cstdint_typedefs.pass.cpp | 53 …static_assert((std::is_same<std::atomic< std::int_fast8_t>, std::atomic_int_fast8_t>::value), "… in main() 54 …static_assert((std::is_same<std::atomic< std::uint_fast8_t>, std::atomic_uint_fast8_t>::value), "… in main() 55 …static_assert((std::is_same<std::atomic< std::int_fast16_t>, std::atomic_int_fast16_t>::value), "… in main() 56 …static_assert((std::is_same<std::atomic<std::uint_fast16_t>, std::atomic_uint_fast16_t>::value), "… in main() 57 …static_assert((std::is_same<std::atomic< std::int_fast32_t>, std::atomic_int_fast32_t>::value), "… in main() 62 static_assert((std::is_same<std::atomic< std::intptr_t>, std::atomic_intptr_t>::value), ""); in main() 63 static_assert((std::is_same<std::atomic<std::uintptr_t>, std::atomic_uintptr_t>::value), ""); in main() 64 static_assert((std::is_same<std::atomic< std::size_t>, std::atomic_size_t>::value), ""); in main() 65 static_assert((std::is_same<std::atomic<std::ptrdiff_t>, std::atomic_ptrdiff_t>::value), ""); in main() 66 static_assert((std::is_same<std::atomic< std::intmax_t>, std::atomic_intmax_t>::value), ""); in main() [all …]
|
| /llvm-project-15.0.7/llvm/test/Transforms/InstCombine/ |
| H A D | element-atomic-memintrins.ll | 17 ; CHECK-NEXT: store atomic i8 1, i8* [[DEST:%.*]] unordered, align 1 34 ; CHECK-NEXT: store atomic i8 1, i8* [[DEST:%.*]] unordered, align 2 36 ; CHECK-NEXT: store atomic i16 257, i16* [[TMP1]] unordered, align 2 52 ; CHECK-NEXT: store atomic i8 1, i8* [[DEST:%.*]] unordered, align 4 54 ; CHECK-NEXT: store atomic i16 257, i16* [[TMP1]] unordered, align 4 56 ; CHECK-NEXT: store atomic i32 16843009, i32* [[TMP2]] unordered, align 4 71 ; CHECK-NEXT: store atomic i8 1, i8* [[DEST:%.*]] unordered, align 8 73 ; CHECK-NEXT: store atomic i16 257, i16* [[TMP1]] unordered, align 8 75 ; CHECK-NEXT: store atomic i32 16843009, i32* [[TMP2]] unordered, align 8 91 ; CHECK-NEXT: store atomic i8 1, i8* [[DEST:%.*]] unordered, align 16 [all …]
|
| H A D | atomic.ll | 7 ; Check transforms involving atomic operations 15 %x = load atomic i32, i32* %p seq_cst, align 4 49 ; Forwarding from a stronger ordered atomic is fine 56 %x = load atomic i32, i32* %p seq_cst, align 4 57 %y = load atomic i32, i32* %p unordered, align 4 71 %x = load atomic i32, i32* %p unordered, align 4 77 ; Forwarding atomic to atomic is fine 98 %x = load atomic i32, i32* %p seq_cst, align 4 112 %x = load atomic i32, i32* %p seq_cst, align 4 113 %y = load atomic i32, i32* %p acquire, align 4 [all …]
|
| /llvm-project-15.0.7/libcxx/test/std/atomics/atomics.lockfree/ |
| H A D | isalwayslockfree.pass.cpp | 22 if (std::atomic<T>::is_always_lock_free) { in checkAlwaysLockFree() 24 assert(std::atomic<T>().is_lock_free()); in checkAlwaysLockFree() 91 static_assert(std::atomic<bool>::is_always_lock_free == (2 == ATOMIC_BOOL_LOCK_FREE), ""); in run() 92 static_assert(std::atomic<char>::is_always_lock_free == (2 == ATOMIC_CHAR_LOCK_FREE), ""); in run() 97 static_assert(std::atomic<char8_t>::is_always_lock_free == (2 == ATOMIC_CHAR8_T_LOCK_FREE), ""); in run() 101 static_assert(std::atomic<wchar_t>::is_always_lock_free == (2 == ATOMIC_WCHAR_T_LOCK_FREE), ""); in run() 102 static_assert(std::atomic<short>::is_always_lock_free == (2 == ATOMIC_SHORT_LOCK_FREE), ""); in run() 104 static_assert(std::atomic<int>::is_always_lock_free == (2 == ATOMIC_INT_LOCK_FREE), ""); in run() 106 static_assert(std::atomic<long>::is_always_lock_free == (2 == ATOMIC_LONG_LOCK_FREE), ""); in run() 108 static_assert(std::atomic<long long>::is_always_lock_free == (2 == ATOMIC_LLONG_LOCK_FREE), ""); in run() [all …]
|
| /llvm-project-15.0.7/llvm/test/CodeGen/NVPTX/ |
| H A D | atomics-with-scope.ll | 14 %tmp36 = tail call i32 @llvm.nvvm.atomic.add.gen.i.cta.i32.p0i32(i32* %ip, i32 %i) 148 declare i32 @llvm.nvvm.atomic.add.gen.i.cta.i32.p0i32(i32* nocapture, i32) #1 149 declare i64 @llvm.nvvm.atomic.add.gen.i.cta.i64.p0i64(i64* nocapture, i64) #1 150 declare i32 @llvm.nvvm.atomic.add.gen.i.sys.i32.p0i32(i32* nocapture, i32) #1 151 declare i64 @llvm.nvvm.atomic.add.gen.i.sys.i64.p0i64(i64* nocapture, i64) #1 160 declare i32 @llvm.nvvm.atomic.max.gen.i.cta.i32.p0i32(i32* nocapture, i32) #1 161 declare i64 @llvm.nvvm.atomic.max.gen.i.cta.i64.p0i64(i64* nocapture, i64) #1 176 declare i32 @llvm.nvvm.atomic.or.gen.i.cta.i32.p0i32(i32* nocapture, i32) #1 177 declare i64 @llvm.nvvm.atomic.or.gen.i.cta.i64.p0i64(i64* nocapture, i64) #1 178 declare i32 @llvm.nvvm.atomic.or.gen.i.sys.i32.p0i32(i32* nocapture, i32) #1 [all …]
|
| /llvm-project-15.0.7/llvm/test/CodeGen/VE/Scalar/ |
| H A D | atomic_load.ll | 3 ;;; Test atomic load for all types and all memory order 84 …%2 = getelementptr inbounds %"struct.std::__1::atomic", %"struct.std::__1::atomic"* %0, i64 0, i32… 846 …%1 = load atomic i8, i8* getelementptr inbounds (%"struct.std::__1::atomic", %"struct.std::__1::at… 861 …%1 = load atomic i8, i8* getelementptr inbounds (%"struct.std::__1::atomic.0", %"struct.std::__1::… 874 …%1 = load atomic i8, i8* getelementptr inbounds (%"struct.std::__1::atomic.5", %"struct.std::__1::… 887 …%1 = load atomic i16, i16* getelementptr inbounds (%"struct.std::__1::atomic.10", %"struct.std::__… 900 …%1 = load atomic i16, i16* getelementptr inbounds (%"struct.std::__1::atomic.15", %"struct.std::__… 913 …%1 = load atomic i32, i32* getelementptr inbounds (%"struct.std::__1::atomic.20", %"struct.std::__… 926 …%1 = load atomic i32, i32* getelementptr inbounds (%"struct.std::__1::atomic.25", %"struct.std::__… 939 …%1 = load atomic i64, i64* getelementptr inbounds (%"struct.std::__1::atomic.30", %"struct.std::__… [all …]
|
| H A D | atomic_store.ll | 3 ;;; Test atomic store for all types and all memory order 84 …%4 = getelementptr inbounds %"struct.std::__1::atomic", %"struct.std::__1::atomic"* %0, i64 0, i32… 765 …store atomic i8 %2, i8* getelementptr inbounds (%"struct.std::__1::atomic", %"struct.std::__1::ato… 778 …store atomic i8 %0, i8* getelementptr inbounds (%"struct.std::__1::atomic.0", %"struct.std::__1::a… 791 …store atomic i8 %0, i8* getelementptr inbounds (%"struct.std::__1::atomic.5", %"struct.std::__1::a… 804 …store atomic i16 %0, i16* getelementptr inbounds (%"struct.std::__1::atomic.10", %"struct.std::__1… 817 …store atomic i16 %0, i16* getelementptr inbounds (%"struct.std::__1::atomic.15", %"struct.std::__1… 830 …store atomic i32 %0, i32* getelementptr inbounds (%"struct.std::__1::atomic.20", %"struct.std::__1… 843 …store atomic i32 %0, i32* getelementptr inbounds (%"struct.std::__1::atomic.25", %"struct.std::__1… 856 …store atomic i64 %0, i64* getelementptr inbounds (%"struct.std::__1::atomic.30", %"struct.std::__1… [all …]
|
| /llvm-project-15.0.7/llvm/test/Analysis/DivergenceAnalysis/AMDGPU/ |
| H A D | llvm.amdgcn.buffer.atomic.ll | 3 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.swap.i32( 11 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.add.i32( 19 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.sub.i32( 27 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.smin.i32( 35 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.umin.i32( 43 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.smax.i32( 51 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.umax.i32( 59 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.and.i32( 67 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.or.i32( 75 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.xor.i32( [all …]
|
| H A D | llvm.amdgcn.image.atomic.ll | 3 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.swap.1d.i32.i32( 11 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.add.1d.i32.i32( 19 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.sub.1d.i32.i32( 27 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.smin.1d.i32.i32( 35 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.umin.1d.i32.i32( 43 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.smax.1d.i32.i32( 51 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.umax.1d.i32.i32( 59 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.and.1d.i32.i32( 67 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.or.1d.i32.i32( 75 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.xor.1d.i32.i32( [all …]
|
| /llvm-project-15.0.7/libcxx/include/ |
| H A D | atomic | 62 struct atomic 73 atomic(const atomic&) = delete; 74 atomic& operator=(const atomic&) = delete; 75 atomic& operator=(const atomic&) volatile = delete; 124 atomic(const atomic&) = delete; 125 atomic& operator=(const atomic&) = delete; 126 atomic& operator=(const atomic&) volatile = delete; 208 atomic(const atomic&) = delete; 209 atomic& operator=(const atomic&) = delete; 1751 atomic& operator=(const atomic&) = delete; [all …]
|
| /llvm-project-15.0.7/llvm/test/Transforms/GVN/PRE/ |
| H A D | atomic.ll | 124 ; atomic to non-atomic forwarding is legal 143 ; atomic to unordered atomic forwarding is legal 166 ; forwarding non-atomic to atomic is wrong! (However, 191 ; CHECK: store atomic 344 ; unordered atomic to unordered atomic 361 ; unordered atomic to non-atomic 398 ; unordered atomic to unordered atomic 416 ; unordered atomic to non-atomic 434 ; non-atomic to unordered atomic - can't forward! 451 ; ordered atomic to ordered atomic - can't forward [all …]
|
| /llvm-project-15.0.7/llvm/test/Analysis/LegacyDivergenceAnalysis/AMDGPU/ |
| H A D | llvm.amdgcn.buffer.atomic.ll | 3 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.swap.i32( 11 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.add.i32( 19 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.sub.i32( 27 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.smin.i32( 35 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.umin.i32( 43 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.smax.i32( 51 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.umax.i32( 59 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.and.i32( 67 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.or.i32( 75 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.buffer.atomic.xor.i32( [all …]
|
| H A D | llvm.amdgcn.image.atomic.ll | 3 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.swap.1d.i32.i32( 11 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.add.1d.i32.i32( 19 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.sub.1d.i32.i32( 27 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.smin.1d.i32.i32( 35 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.umin.1d.i32.i32( 43 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.smax.1d.i32.i32( 51 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.umax.1d.i32.i32( 59 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.and.1d.i32.i32( 67 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.or.1d.i32.i32( 75 ;CHECK: DIVERGENT: %orig = call i32 @llvm.amdgcn.image.atomic.xor.1d.i32.i32( [all …]
|