Home
last modified time | relevance | path

Searched refs:atomic (Results 1 – 25 of 220) sorted by relevance

123456789

/external/guava/guava/src/com/google/common/util/concurrent/
DAtomicLongMap.java14 import java.util.concurrent.atomic.AtomicLong;
68 AtomicLong atomic = map.get(key); in get() local
69 return atomic == null ? 0L : atomic.get(); in get()
92 AtomicLong atomic = map.get(key); in addAndGet() local
93 if (atomic == null) { in addAndGet()
94 atomic = map.putIfAbsent(key, new AtomicLong(delta)); in addAndGet()
95 if (atomic == null) { in addAndGet()
102 long oldValue = atomic.get(); in addAndGet()
105 if (map.replace(key, atomic, new AtomicLong(delta))) { in addAndGet()
113 if (atomic.compareAndSet(oldValue, newValue)) { in addAndGet()
[all …]
DAtomics.java21 import java.util.concurrent.atomic.AtomicReference;
22 import java.util.concurrent.atomic.AtomicReferenceArray;
/external/llvm/test/Transforms/DeadStoreElimination/
Datomic.ll6 ; Sanity tests for atomic stores.
8 ; atomic ops, just some transformations are not allowed across them.
22 store atomic i32 0, i32* @y unordered, align 4
34 %x = load atomic i32* @y seq_cst, align 4
39 ; DSE across seq_cst store (store before atomic store must not be removed)
43 ; CHECK: store atomic i32 2
46 store atomic i32 2, i32* @y seq_cst, align 4
54 ; CHECK-NOT: store atomic
57 store atomic i32 0, i32* @x unordered, align 4
62 ; DSE unordered store overwriting non-atomic store (allowed)
[all …]
/external/llvm/test/Instrumentation/ThreadSanitizer/
Datomic.ll2 ; Check that atomic memory operations are converted to calls into ThreadSanitizer runtime.
7 %0 = load atomic i8* %a unordered, align 1
15 %0 = load atomic i8* %a monotonic, align 1
23 %0 = load atomic i8* %a acquire, align 1
31 %0 = load atomic i8* %a seq_cst, align 1
39 store atomic i8 0, i8* %a unordered, align 1
47 store atomic i8 0, i8* %a monotonic, align 1
55 store atomic i8 0, i8* %a release, align 1
63 store atomic i8 0, i8* %a seq_cst, align 1
71 %0 = load atomic i16* %a unordered, align 2
[all …]
/external/llvm/test/Assembler/
Datomic.ll2 ; Basic smoke test for atomic operations.
5 ; CHECK: load atomic i32* %x unordered, align 4
6 load atomic i32* %x unordered, align 4
7 ; CHECK: load atomic volatile i32* %x singlethread acquire, align 4
8 load atomic volatile i32* %x singlethread acquire, align 4
9 ; CHECK: store atomic i32 3, i32* %x release, align 4
10 store atomic i32 3, i32* %x release, align 4
11 ; CHECK: store atomic volatile i32 3, i32* %x singlethread monotonic, align 4
12 store atomic volatile i32 3, i32* %x singlethread monotonic, align 4
/external/llvm/test/Transforms/LICM/
Datomics.ll10 %val = load atomic i32* %y unordered, align 4
18 ; CHECK: load atomic
30 %val = load atomic i32* %y monotonic, align 4
37 ; CHECK: load atomic
50 %vala = load atomic i32* %y monotonic, align 4
51 %valb = load atomic i32* %x unordered, align 4
58 ; CHECK: load atomic i32* %x unordered
69 %vala = load atomic i32* %y monotonic, align 4
70 store atomic i32 %vala, i32* %x unordered, align 4
77 ; CHECK: load atomic i32* %y monotonic
[all …]
/external/clang/test/SemaObjC/
Dconflict-atomic-property.m5 @property (nonatomic, assign, atomic) float dummy; // expected-error {{property attributes 'atomic'…
7 @property (atomic, assign) float d2;
9 @property (atomic, nonatomic, assign) float d4; // expected-error {{property attributes 'atomic' an…
Dcustom-atomic-property.m1 // RUN: %clang_cc1 -fsyntax-only -Wcustom-atomic-properties -verify -Wno-objc-root-class %s
8 …n 0;} // expected-warning {{atomic by default property 'myProp' has a user defined getter (propert…
9 …)e {} // expected-warning {{atomic by default property 'myProp' has a user defined setter (propert…
Dwarn-implicit-atomic-property.m1 // RUN: %clang_cc1 -fsyntax-only -Wimplicit-atomic-properties -fobjc-default-synthesize-properties …
6 @property (atomic, readwrite) int P1; // OK
11 @implementation Super // expected-warning {{property is assumed atomic when auto-synthesizing the p…
12 @synthesize P,P1,P2; // expected-warning {{property is assumed atomic by default}}
/external/llvm/test/Transforms/GVN/
Datomic.ll15 store atomic i32 %x, i32* @x unordered, align 4
27 store atomic i32 %x, i32* @x seq_cst, align 4
39 %y = load atomic i32* @x unordered, align 4
46 ; GVN across acquire load (load after atomic load must not be removed)
49 ; CHECK: load atomic i32* @x
53 %y = load atomic i32* @x seq_cst, align 4
65 %x = load atomic i32* @x unordered, align 4
74 ; CHECK: load atomic i32* @x unordered
77 %x2 = load atomic i32* @x unordered, align 4
/external/llvm/test/Transforms/SCCP/
Datomic-load-store.ll3 ; This transformation is safe for atomic loads and stores; check that it works.
9 %V = load atomic i32* @G seq_cst, align 4
13 store atomic i32 17, i32* @G seq_cst, align 4
16 store atomic i32 123, i32* @G seq_cst, align 4
24 %V = load atomic i32* @C seq_cst, align 4
/external/llvm/test/Transforms/InstCombine/
Datomic.ll6 ; Check transforms involving atomic operations
10 ; CHECK: load atomic i8** %p monotonic, align 8
12 %r = load atomic i32** %c monotonic, align 8
18 ; CHECK: %x = load atomic i32* %p seq_cst, align 4
20 %x = load atomic i32* %p seq_cst, align 4
/external/llvm/test/Transforms/Mem2Reg/
Datomic.ll3 ; mem2reg is allowed with arbitrary atomic operations (although we only support
4 ; it for atomic load and store at the moment).
9 store atomic i32 %x, i32* %a seq_cst, align 4
10 %r = load atomic i32* %a seq_cst, align 4
/external/llvm/test/CodeGen/ARM/
Datomic-load-store.ll17 store atomic i32 %val1, i32* %ptr seq_cst, align 4
30 %val = load atomic i32* %ptr seq_cst, align 4
44 %val = load atomic i8* %ptr1 unordered, align 1
45 store atomic i8 %val, i8* %ptr2 unordered, align 1
53 %val = load atomic i8* %ptr1 seq_cst, align 1
54 store atomic i8 %val, i8* %ptr2 seq_cst, align 1
/external/llvm/test/Transforms/MemCpyOpt/
Datomic.ll12 ; memcpyopt should not touch atomic ops
15 ; CHECK: store atomic
20 store atomic i32 0, i32* %gep1 unordered, align 4
30 ; CHECK-NEXT: store atomic
35 store atomic i32 0, i32* @x unordered, align 4
/external/llvm/docs/
DAtomics.rst20 The atomic instructions are designed specifically to provide readable IR and
23 * The new C++0x ``<atomic>`` header. (`C++0x draft available here
34 * Other scenarios with atomic semantics, including ``static`` variables with
42 pair of volatile stores. On the other hand, a non-volatile non-atomic load can
51 .. _Optimization outside atomic:
53 Optimization outside atomic
63 instructions with atomic ordering involved, concurrency does not matter, with
106 various atomic instructions. The exact guarantees provided depend on the
109 ``load atomic`` and ``store atomic`` provide the same basic functionality as
110 non-atomic loads and stores, but provide additional guarantees in situations
[all …]
/external/llvm/test/CodeGen/X86/
Datomic-load-store.ll7 store atomic i32 %val1, i32* %ptr seq_cst, align 4
14 store atomic i32 %val1, i32* %ptr release, align 4
21 %val = load atomic i32* %ptr seq_cst, align 4
Dcmpxchg16b.ll13 ; FIXME: Handle 128-bit atomicrmw/load atomic/store atomic
Datomic-pointer.ll9 %0 = load atomic i32** %a0 seq_cst, align 4
20 store atomic i32* %a0, i32** %a1 seq_cst, align 4
Datomic-load-store-wide.ll10 store atomic i64 %val1, i64* %ptr seq_cst, align 8
17 %val = load atomic i64* %ptr seq_cst, align 8
/external/llvm/test/Transforms/FunctionAttrs/
Datomic.ll9 store atomic i32 %x, i32* %x.addr seq_cst, align 4
10 %r = load atomic i32* %x.addr seq_cst, align 4
18 %r = load atomic i32* %x seq_cst, align 4
/external/llvm/cmake/modules/
DCheckAtomic.cmake1 # atomic builtins are required for threading support.
28 message(STATUS "Warning: LLVM will be built thread-unsafe because atomic builtins are missing")
/external/clang/test/SemaCXX/
Datomic-type.cxx3 template<typename T> struct atomic { struct
9 atomic<inner> i;
/external/llvm/lib/Support/
DAtomic.cpp72 # error No atomic increment implementation for your platform! in AtomicIncrement()
87 # error No atomic decrement implementation for your platform! in AtomicDecrement()
102 # error No atomic add implementation for your platform! in AtomicAdd()
/external/clang/test/FixIt/
Datomic-property.m5 @property (atomic) id atomic_prop;
11 @property (copy, atomic, readwrite) id atomic_prop1;

123456789