| /llvm-project-15.0.7/mlir/test/Dialect/SPIRV/IR/ |
| H A D | barrier-ops.mlir | 8 // CHECK: spv.ControlBarrier Workgroup, Device, "Acquire|UniformMemory" 9 spv.ControlBarrier Workgroup, Device, "Acquire|UniformMemory" 17 spv.ControlBarrier Something, Device, "Acquire|UniformMemory" 29 // CHECK: spv.MemoryBarrier Device, "Acquire|UniformMemory" 30 spv.MemoryBarrier Device, "Acquire|UniformMemory" 37 // CHECK: spv.MemoryBarrier Workgroup, Acquire 38 spv.MemoryBarrier Workgroup, Acquire 45 …// expected-error @+1 {{expected at most one of these four memory constraints to be set: `Acquire`… 46 spv.MemoryBarrier Device, "Acquire|Release"
|
| H A D | atomic-ops.mlir | 33 …// expected-error @+1 {{expected at most one of these four memory constraints to be set: `Acquire`… 34 %0 = spv.AtomicAnd "Device" "Acquire|Release" %ptr, %value : !spv.ptr<i32, StorageBuffer> 45 …// CHECK: spv.AtomicCompareExchange "Workgroup" "Release" "Acquire" %{{.*}}, %{{.*}}, %{{.*}} : !s… 46 …%0 = spv.AtomicCompareExchange "Workgroup" "Release" "Acquire" %ptr, %value, %comparator: !spv.ptr… 81 …// CHECK: spv.AtomicCompareExchangeWeak "Workgroup" "Release" "Acquire" %{{.*}}, %{{.*}}, %{{.*}} … 82 …%0 = spv.AtomicCompareExchangeWeak "Workgroup" "Release" "Acquire" %ptr, %value, %comparator: !spv… 271 …// expected-error @+1 {{expected at most one of these four memory constraints to be set: `Acquire`… 272 %0 = spv.AtomicFAddEXT "Device" "Acquire|Release" %ptr, %value : !spv.ptr<f32, StorageBuffer>
|
| /llvm-project-15.0.7/mlir/test/Target/SPIRV/ |
| H A D | atomic-ops.mlir | 6 …// CHECK: spv.AtomicCompareExchangeWeak "Workgroup" "Release" "Acquire" %{{.*}}, %{{.*}}, %{{.*}} … 7 …%0 = spv.AtomicCompareExchangeWeak "Workgroup" "Release" "Acquire" %ptr, %value, %comparator: !spv… 10 // CHECK: spv.AtomicIAdd "Workgroup" "Acquire" %{{.*}}, %{{.*}} : !spv.ptr<i32, Workgroup> 11 %2 = spv.AtomicIAdd "Workgroup" "Acquire" %ptr, %value : !spv.ptr<i32, Workgroup> 12 // CHECK: spv.AtomicIDecrement "Workgroup" "Acquire" %{{.*}} : !spv.ptr<i32, Workgroup> 13 %3 = spv.AtomicIDecrement "Workgroup" "Acquire" %ptr : !spv.ptr<i32, Workgroup> 16 // CHECK: spv.AtomicISub "Workgroup" "Acquire" %{{.*}}, %{{.*}} : !spv.ptr<i32, Workgroup> 17 %5 = spv.AtomicISub "Workgroup" "Acquire" %ptr, %value : !spv.ptr<i32, Workgroup> 31 …%12 = spv.AtomicCompareExchange "Workgroup" "Release" "Acquire" %ptr, %value, %comparator: !spv.pt… 39 // CHECK: spv.AtomicFAddEXT "Workgroup" "Acquire" %{{.*}}, %{{.*}} : !spv.ptr<f32, Workgroup> [all …]
|
| /llvm-project-15.0.7/compiler-rt/lib/tsan/rtl-old/ |
| H A D | tsan_interceptors_mac.cpp | 194 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 205 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 226 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 237 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 257 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 267 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 277 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 300 Acquire(thr, pc, (uptr)connection); in TSAN_INTERCEPTOR() 314 Acquire(thr, pc, (uptr)connection); in TSAN_INTERCEPTOR() 330 Acquire(thr, pc, (uptr)connection); in TSAN_INTERCEPTOR() [all …]
|
| H A D | tsan_interceptors_libdispatch.cpp | 106 Acquire(thr, pc, submit_sync); in dispatch_sync_pre_execute() 111 if (serial_sync) Acquire(thr, pc, serial_sync); in dispatch_sync_pre_execute() 112 if (serial_task && concurrent_sync) Acquire(thr, pc, concurrent_sync); in dispatch_sync_pre_execute() 306 Acquire(thr, pc, (uptr)a); in TSAN_INTERCEPTOR() 332 if (result == 0) Acquire(thr, pc, (uptr)dsema); in TSAN_INTERCEPTOR() 340 if (result == 0) Acquire(thr, pc, (uptr)group); in TSAN_INTERCEPTOR() 397 Acquire(thr, pc, (uptr)group); in DECLARE_REAL() 517 Acquire(thr, pc, parent_to_child_sync); 526 Acquire(thr, pc, child_to_parent_sync); 548 Acquire(thr, pc, parent_to_child_sync); in TSAN_INTERCEPTOR() [all …]
|
| H A D | tsan_vector_clock.cpp | 36 void VectorClock::Acquire(const VectorClock* src) { in Acquire() function in __tsan::VectorClock 62 dst->Acquire(this); in Release()
|
| H A D | tsan_vector_clock.h | 28 void Acquire(const VectorClock* src);
|
| H A D | tsan_interface.cpp | 101 Acquire(cur_thread(), CALLERPC, (uptr)addr); in __tsan_acquire()
|
| /llvm-project-15.0.7/compiler-rt/lib/tsan/rtl/ |
| H A D | tsan_interceptors_mac.cpp | 194 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 205 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 226 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 237 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 257 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 267 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 277 Acquire(thr, pc, (uptr)lock); in TSAN_INTERCEPTOR() 300 Acquire(thr, pc, (uptr)connection); in TSAN_INTERCEPTOR() 314 Acquire(thr, pc, (uptr)connection); in TSAN_INTERCEPTOR() 330 Acquire(thr, pc, (uptr)connection); in TSAN_INTERCEPTOR() [all …]
|
| H A D | tsan_interceptors_libdispatch.cpp | 106 Acquire(thr, pc, submit_sync); in dispatch_sync_pre_execute() 111 if (serial_sync) Acquire(thr, pc, serial_sync); in dispatch_sync_pre_execute() 112 if (serial_task && concurrent_sync) Acquire(thr, pc, concurrent_sync); in dispatch_sync_pre_execute() 306 Acquire(thr, pc, (uptr)a); in TSAN_INTERCEPTOR() 332 if (result == 0) Acquire(thr, pc, (uptr)dsema); in TSAN_INTERCEPTOR() 340 if (result == 0) Acquire(thr, pc, (uptr)group); in TSAN_INTERCEPTOR() 397 Acquire(thr, pc, (uptr)group); in DECLARE_REAL() 517 Acquire(thr, pc, parent_to_child_sync); 526 Acquire(thr, pc, child_to_parent_sync); 548 Acquire(thr, pc, parent_to_child_sync); in TSAN_INTERCEPTOR() [all …]
|
| H A D | tsan_vector_clock.cpp | 36 void VectorClock::Acquire(const VectorClock* src) { in Acquire() function in __tsan::VectorClock 62 dst->Acquire(this); in Release()
|
| H A D | tsan_vector_clock.h | 28 void Acquire(const VectorClock* src);
|
| H A D | tsan_rtl_thread.cpp | 158 thr->clock.Acquire(thr->tctx->sync); in ThreadStart() 301 thr->clock.Acquire(arg.sync); in ThreadJoin() 364 Acquire(fiber, pc, (uptr)fiber); in FiberSwitch()
|
| H A D | tsan_rtl_mutex.cpp | 193 thr->clock.Acquire(s->clock); in MutexPostLock() 194 thr->clock.Acquire(s->read_clock); in MutexPostLock() 303 thr->clock.Acquire(s->clock); in MutexPostReadLock() 441 void Acquire(ThreadState *thr, uptr pc, uptr addr) { in Acquire() function 452 thr->clock.Acquire(s->clock); in Acquire()
|
| H A D | tsan_interface.cpp | 87 Acquire(cur_thread(), CALLERPC, (uptr)addr); in __tsan_acquire()
|
| /llvm-project-15.0.7/llvm/include/llvm/Support/ |
| H A D | AtomicOrdering.h | 61 Acquire = 4, enumerator 129 return isAtLeastOrStrongerThan(AO, AtomicOrdering::Acquire); in isAcquireOrStronger() 140 if ((AO == AtomicOrdering::Acquire && Other == AtomicOrdering::Release) || in getMergedAtomicOrdering() 141 (AO == AtomicOrdering::Release && Other == AtomicOrdering::Acquire)) in getMergedAtomicOrdering()
|
| /llvm-project-15.0.7/clang/test/SemaObjCXX/ |
| H A D | thread-safety-analysis.h | 3 void Acquire() __attribute__((exclusive_lock_function())) {} in Acquire() function 11 lock.Acquire(); in AutoLock()
|
| H A D | warn-thread-safety-analysis.mm | 24 lock_.Acquire(); // expected-note{{mutex acquired here}}
|
| /llvm-project-15.0.7/compiler-rt/lib/tsan/tests/unit/ |
| H A D | tsan_vector_clock_test.cpp | 39 vc1->Acquire(vc2); in TEST() 44 vc1->Acquire(vc2); in TEST() 52 vc1->Acquire(vc2); in TEST()
|
| /llvm-project-15.0.7/llvm/docs/ |
| H A D | Atomics.rst | 37 be moved across a volatile load freely, but not an Acquire load. 113 A ``fence`` provides Acquire and/or Release ordering which is not part of 115 A Monotonic load followed by an Acquire fence is roughly equivalent to an 116 Acquire load, and a Monotonic store following a Release fence is roughly 118 an Acquire and a Release fence, and offer some additional complicated 134 Acquire/Release. (See also `LangRef Ordering <LangRef.html#ordering>`_.) 248 Acquire section in Atomic orderings 260 Acquire only provides a semantic guarantee when paired with a Release 266 operation to after it, and move non-Acquire loads from before an Acquire 276 maintain Acquire semantics for a memory operation. [all …]
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/SPIRV/IR/ |
| H A D | SPIRVBarrierOps.td | 59 memory-semantics ::= `"None"` | `"Acquire"` | "Release"` | ... 67 spv.ControlBarrier "Workgroup", "Device", "Acquire|UniformMemory" 112 memory-semantics ::= `"None"` | `"Acquire"` | `"Release"` | ... 120 spv.MemoryBarrier "Device", "Acquire|UniformMemory"
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | GlobalStatus.cpp | 34 if ((X == AtomicOrdering::Acquire && Y == AtomicOrdering::Release) || in strongerOrdering() 35 (Y == AtomicOrdering::Acquire && X == AtomicOrdering::Release)) in strongerOrdering()
|
| /llvm-project-15.0.7/llvm/lib/Target/SPIRV/ |
| H A D | SPIRVUtils.cpp | 195 case AtomicOrdering::Acquire: in getMemSemantics() 196 return SPIRV::MemorySemantics::Acquire; in getMemSemantics()
|
| /llvm-project-15.0.7/llvm/test/Transforms/FunctionAttrs/ |
| H A D | atomic.ll | 15 ; A function with an Acquire load is not readonly.
|
| /llvm-project-15.0.7/llvm/lib/Target/RISCV/ |
| H A D | RISCVExpandAtomicPseudoInsts.cpp | 138 case AtomicOrdering::Acquire: in getLRForRMW32() 155 case AtomicOrdering::Acquire: in getSCForRMW32() 172 case AtomicOrdering::Acquire: in getLRForRMW64() 189 case AtomicOrdering::Acquire: in getSCForRMW64()
|