/external/llvm-project/llvm/test/CodeGen/X86/ |
D | move_latch_to_loop_top.ll | 3 ; The block latch should be moved before header. 5 ;CHECK: %latch 13 %x1 = phi i64 [0, %entry], [%x2, %latch] 14 %count1 = phi i32 [0, %entry], [%count4, %latch] 20 br i1 %3, label %latch, label %false 24 br label %latch 26 latch: 36 ; The block latch and one of false/true should be moved before header. 39 ;CHECK: %latch 47 %x1 = phi i64 [0, %entry], [%x2, %latch] [all …]
|
/external/llvm-project/libcxx/include/ |
D | latch | 2 //===--------------------------- latch -----------------------------------===// 14 latch synopsis 19 class latch 24 constexpr explicit latch(ptrdiff_t __expected); 25 ~latch(); 27 latch(const latch&) = delete; 28 latch& operator=(const latch&) = delete; 52 # error <latch> is not supported on this single threaded system 62 class latch 72 constexpr explicit latch(ptrdiff_t __expected) : __a(__expected) { } [all …]
|
/external/llvm-project/llvm/test/Transforms/IndVarSimplify/ |
D | backedge-on-min-max.ll | 15 %idx = phi i32 [ 0, %entry ], [ %idx.inc, %latch ] 18 br i1 %in.bounds, label %ok, label %latch 19 ; CHECK: br i1 true, label %ok, label %latch 24 br label %latch 26 latch: 43 %idx = phi i32 [ 0, %entry ], [ %idx.inc, %latch ] 46 br i1 %in.bounds, label %ok, label %latch 47 ; CHECK: br i1 true, label %ok, label %latch 52 br label %latch 54 latch: [all …]
|
D | lcssa-preservation.ll | 14 %outer.iv = phi i32 [ 0, %entry ], [ %x, %outer.latch ] 21 %inner.iv = phi i32 [ undef, %outer.header ], [ %inc, %inner.latch ] 23 br i1 %cmp1, label %inner.latch, label %outer.latch 24 ; CHECK: br i1 {{.*}}, label %inner.latch, label %outer.latch 26 inner.latch: 27 ; CHECK: inner.latch: 33 outer.latch: 34 ; CHECK: outer.latch: 39 ; CHECK-NEXT: %[[LCSSA:.*]] = phi i32 [ %[[SCEV_EXPANDED]], %inner.latch ] 47 %exit.phi = phi i32 [ %inc, %inner.latch ], [ undef, %outer.latch ]
|
/external/llvm/test/Transforms/IndVarSimplify/ |
D | backedge-on-min-max.ll | 15 %idx = phi i32 [ 0, %entry ], [ %idx.inc, %latch ] 18 br i1 %in.bounds, label %ok, label %latch 19 ; CHECK: br i1 true, label %ok, label %latch 24 br label %latch 26 latch: 43 %idx = phi i32 [ 0, %entry ], [ %idx.inc, %latch ] 46 br i1 %in.bounds, label %ok, label %latch 47 ; CHECK: br i1 true, label %ok, label %latch 52 br label %latch 54 latch: [all …]
|
D | lcssa-preservation.ll | 14 %outer.iv = phi i32 [ 0, %entry ], [ %x, %outer.latch ] 21 %inner.iv = phi i32 [ undef, %outer.header ], [ %inc, %inner.latch ] 23 br i1 %cmp1, label %inner.latch, label %outer.latch 24 ; CHECK: br i1 {{.*}}, label %inner.latch, label %outer.latch 26 inner.latch: 27 ; CHECK: inner.latch: 33 outer.latch: 34 ; CHECK: outer.latch: 39 ; CHECK-NEXT: %[[LCSSA:.*]] = phi i32 [ %[[SCEV_EXPANDED]], %inner.latch ] 47 %exit.phi = phi i32 [ %inc, %inner.latch ], [ undef, %outer.latch ]
|
/external/llvm-project/llvm/test/Transforms/LoopUnroll/ |
D | unroll-unconditional-latch.ll | 12 ; CHECK-NEXT: br label %for.latch 14 ; CHECK-LABEL: for.latch: ; preds = %for.header 17 ; CHECK-NEXT: br label %for.latch.1 19 ; CHECK-LABEL: if.end.loopexit: ; preds = %for.latch.2 22 ; CHECK-LABEL: for.latch.1: ; preds = %for.latch 25 ; CHECK-NEXT: br label %for.latch.2 27 ; CHECK-LABEL: for.latch.2: ; preds = %for.latch.1 30 ; CHECK-NEXT: br i1 true, label %if.end.loopexit, label %for.latch.3 32 ; CHECK-LABEL: for.latch.3: ; preds = %for.latch.2 38 for.header: ; preds = %for.latch, %entry [all …]
|
D | pr18861.ll | 18 ; ( inner.latch ) ( outer.latch ) 23 ; When the inner loop is unrolled, we inner.latch block has only one 33 outer.header: ; preds = %outer.latch, %entry 34 %storemerge1 = phi i32 [ 0, %entry ], [ %inc9, %outer.latch ] 37 inner.header: ; preds = %inner.latch, %outer.header 38 %storemerge = phi i32 [ %add, %inner.latch ], [ 0, %outer.header ] 40 br i1 %cmp, label %inner.latch, label %outer.latch 42 inner.latch: ; preds = %inner.header 47 exit: ; preds = %inner.latch 48 %storemerge1.lcssa = phi i32 [ %storemerge1, %inner.latch ] [all …]
|
D | runtime-loop-multiexit-dom-verify.ll | 16 …K-NEXT: %shftphi = phi i64 [ %shft, %latch ], [ %shft.1, %latch.1 ], [ %shft.2, %latch.2 ], [ %… 28 header: ; preds = %latch, %preheader 29 %iv = phi i64 [ 2, %preheader ], [ %add.iv, %latch ] 32 br i1 %cmp1, label %latch, label %headerexit 34 latch: ; preds = %header 43 latchexit: ; preds = %latch 44 %shftphi = phi i64 [ %shft, %latch ] 56 ; CHECK: br i1 %cmp1.1, label %latch.1, label %headerexit 57 ; CHECK-LABEL: latch.3: 67 header: ; preds = %latch, %preheader [all …]
|
D | partially-unroll-unconditional-latch.ll | 10 ; CHECK-LABEL: for.header: ; preds = %for.latch.3, %entry 11 ; CHECK-NEXT: %red = phi i32 [ 0, %entry ], [ %red.next.3, %for.latch.3 ] 12 ; CHECK-NEXT: %iv = phi i64 [ 0, %entry ], [ %iv.next.3, %for.latch.3 ] 17 ; CHECK-NEXT: br label %for.latch 19 ; CHECK-LABEL: for.latch: ; preds = %for.header 24 ; CHECK-NEXT: br label %for.latch.1 26 ; CHECK-LABEL: exit: ; preds = %for.latch.2 29 ; CHECK-LABEL: for.latch.1: ; preds = %for.latch 34 ; CHECK-NEXT: br label %for.latch.2 36 ; CHECK-LABEL: for.latch.2: ; preds = %for.latch.1 [all …]
|
D | peel-loop-irreducible.ll | 3 ; Check we don't peel loops where the latch is not the exiting block. 9 ; CHECK: br i1 {{.*}} label %latch, label %exiting 10 ; CHECK: latch: 13 ; CHECK: br i1 {{.*}} label %latch, label %exit 20 %i = phi i32 [ 0, %entry ], [ %inc, %latch ] 21 %cmp.phi = phi i1 [ false, %entry ], [ %cmp, %latch ] 22 br i1 %cmp.phi, label %latch, label %exiting 24 latch: 30 %cmp.exiting = phi i1 [ %cmp.phi, %header ], [ %cmp, %latch ] 31 br i1 %cmp.exiting, label %latch, label %exit
|
D | update-loop-info-in-subloops.ll | 9 ; CHECK: L.inner.latch: 10 ; CHECK: L.latch: 12 ; CHECK: L.inner.latch.1: 13 ; CHECK: L.latch.1: 20 %0 = phi i64 [ 1, %entry ], [ %1, %L.latch ] 24 br label %L.inner.latch 26 L.inner.latch: 27 br i1 false, label %L.latch, label %L.inner 29 L.latch:
|
D | runtime-loop-multiple-exits.ll | 82 ; The non-latch exit block has 2 unique predecessors. 141 ; the non-latch exiting block has a switch. 209 ; FIXME: Support multiple exiting blocks to the same latch exit block. 210 ; Three exiting blocks where header and latch exit to same LatchExit. 223 %indvars.iv = phi i64 [ %indvars.iv.next, %latch ], [ 0, %entry ] 224 %sum.02 = phi i32 [ %add, %latch ], [ 0, %entry ] 229 br i1 %cmp, label %for.exit2, label %latch 231 latch: ; preds = %latch, %entry 239 latchExit: ; preds = %latch, %entry 240 %result = phi i32 [ 0, %header ], [ %add, %latch ] [all …]
|
/external/llvm/test/Transforms/LoopUnroll/ |
D | pr18861.ll | 18 ; ( inner.latch ) ( outer.latch ) 23 ; When the inner loop is unrolled, we inner.latch block has only one 33 outer.header: ; preds = %outer.latch, %entry 34 %storemerge1 = phi i32 [ 0, %entry ], [ %inc9, %outer.latch ] 37 inner.header: ; preds = %inner.latch, %outer.header 38 %storemerge = phi i32 [ %add, %inner.latch ], [ 0, %outer.header ] 40 br i1 %cmp, label %inner.latch, label %outer.latch 42 inner.latch: ; preds = %inner.header 47 exit: ; preds = %inner.latch 48 %storemerge1.lcssa = phi i32 [ %storemerge1, %inner.latch ] [all …]
|
D | update-loop-info-in-subloops.ll | 8 ; CHECK: L.inner.latch: 9 ; CHECK: L.latch: 11 ; CHECK: L.inner.latch.1: 12 ; CHECK: L.latch.1: 19 %0 = phi i64 [ 1, %entry ], [ %1, %L.latch ] 23 br label %L.inner.latch 25 L.inner.latch: 26 br i1 false, label %L.latch, label %L.inner 28 L.latch:
|
/external/kotlinx.coroutines/kotlinx-coroutines-core/jvm/test/scheduling/ |
D | CoroutineSchedulerTest.kt | 21 val latch = CountDownLatch(1) in <lambda>() constant 23 latch.countDown() in <lambda>() 26 latch.await() in <lambda>() 34 val latch = CountDownLatch(taskModes.size) in <lambda>() constant 38 latch.countDown() in <lambda>() 43 latch.await() in <lambda>() 125 val latch = CountDownLatch(1) in <lambda>() constant 127 dispatcher.close(); latch.countDown() in <lambda>() 129 latch.await() in <lambda>() 136 var latch = CountDownLatch(1) in <lambda>() variable [all …]
|
/external/llvm-project/llvm/test/Transforms/LoopRotate/ |
D | switch.ll | 15 ; CHECK: latch: 27 header: ; preds = %latch, %start 28 %state = phi i8 [ 2, %start ], [ %next_state, %latch ] 29 %count = phi i64 [ 0, %start ], [ %inc, %latch ] 31 i8 0, label %latch 32 i8 2, label %latch 35 latch: ; preds = %header, %header 56 ; CHECK: latch: 68 header: ; preds = %latch, %start 69 %state = phi i8 [ %start_state, %start ], [ %next_state, %latch ] [all …]
|
/external/llvm-project/llvm/test/Transforms/LoopFusion/ |
D | peel.ll | 26 ; CHECK: br label %for.first.latch.peel 27 ; CHECK: for.first.latch.peel: 32 ; CHECK: br label %for.first.latch.peel10 33 ; CHECK: for.first.latch.peel10: 38 ; CHECK: br label %for.first.latch.peel23 39 ; CHECK: for.first.latch.peel23: 48 ; CHECK: br label %for.first.latch 49 ; CHECK: for.first.latch: 50 ; CHECK: br label %for.second.latch 51 ; CHECK: for.second.latch: [all …]
|
/external/llvm-project/libcxx/test/libcxx/thread/ |
D | latch.availability.verify.cpp | 25 std::latch latch(10); in main() local 26 latch.count_down(); // expected-error {{is unavailable}} in main() 27 latch.count_down(3); // expected-error {{is unavailable}} in main() 28 latch.wait(); // expected-error {{is unavailable}} in main() 29 latch.arrive_and_wait(); // expected-error {{is unavailable}} in main() 30 latch.arrive_and_wait(3); // expected-error {{is unavailable}} in main()
|
/external/llvm-project/llvm/test/Transforms/LICM/ |
D | lcssa-ssa-promoter.ll | 26 br i1 undef, label %outer.latch, label %inner.preheader 28 ; CHECK-NEXT: br i1 undef, label %outer.latch, label %inner.preheader 36 br i1 undef, label %inner.body.rhs, label %inner.latch 38 ; CHECK-NEXT: %[[PHI0:[^,]+]] = phi i32 [ %{{[^,]+}}, %inner.latch ], [ 0, %inner.preheader ] 39 ; CHECK-NEXT: br i1 undef, label %inner.body.rhs, label %inner.latch 43 br label %inner.latch 45 ; CHECK-NEXT: br label %inner.latch 47 inner.latch: 51 ; CHECK: inner.latch: 56 br label %outer.latch [all …]
|
/external/llvm/test/Transforms/LICM/ |
D | lcssa-ssa-promoter.ll | 26 br i1 undef, label %outer.latch, label %inner.preheader 28 ; CHECK-NEXT: br i1 undef, label %outer.latch, label %inner.preheader 36 br i1 undef, label %inner.body.rhs, label %inner.latch 38 ; CHECK-NEXT: %[[PHI0:[^,]+]] = phi i32 [ %{{[^,]+}}, %inner.latch ], [ 0, %inner.preheader ] 39 ; CHECK-NEXT: br i1 undef, label %inner.body.rhs, label %inner.latch 43 br label %inner.latch 45 ; CHECK-NEXT: br label %inner.latch 47 inner.latch: 51 ; CHECK: inner.latch: 56 br label %outer.latch [all …]
|
/external/desugar/test/java/com/google/devtools/build/android/desugar/runtime/ |
D | ConcurrentWeakIdentityHashMapTest.java | 51 testConcurrentWeakIdentityHashMapSingleThreadedHelper(CountDownLatch latch) in testConcurrentWeakIdentityHashMapSingleThreadedHelper() argument 54 Exception e1 = new ExceptionWithLatch("e1", latch); in testConcurrentWeakIdentityHashMapSingleThreadedHelper() 60 Exception suppressed1 = new ExceptionWithLatch("suppressed1", latch); in testConcurrentWeakIdentityHashMapSingleThreadedHelper() 64 Exception suppressed2 = new ExceptionWithLatch("suppressed2", latch); in testConcurrentWeakIdentityHashMapSingleThreadedHelper() 76 Exception e2 = new ExceptionWithLatch("e2", latch); in testConcurrentWeakIdentityHashMapSingleThreadedHelper() 78 Exception e3 = new ExceptionWithLatch("e3", latch); in testConcurrentWeakIdentityHashMapSingleThreadedHelper() 86 CountDownLatch latch = new CountDownLatch(5); in testSingleThreadedUse() local 88 testConcurrentWeakIdentityHashMapSingleThreadedHelper(latch); in testSingleThreadedUse() 93 latch.await(); // wait for e1 to be garbage collected. in testSingleThreadedUse() 99 int numMainExceptions, int numSuppressedPerMain, CountDownLatch latch) { in createExceptionWithSuppressed() argument [all …]
|
/external/kotlinx.coroutines/kotlinx-coroutines-core/common/test/flow/terminal/ |
D | FirstTest.kt | 37 val latch = Channel<Unit>() in <lambda>() constant 41 latch.send(Unit) in <lambda>() 51 latch.receive() in <lambda>() 66 val latch = Channel<Unit>() in <lambda>() constant 70 latch.send(Unit) in <lambda>() 79 latch.receive() in <lambda>() 104 val latch = Channel<Unit>() in <lambda>() constant 108 latch.send(Unit) in <lambda>() 118 latch.receive() in <lambda>() 139 val latch = Channel<Unit>() in <lambda>() constant [all …]
|
/external/llvm-project/llvm/test/Transforms/LoopInterchange/ |
D | perserve-lcssa.ll | 17 ; CHECK-NEXT: %0 = phi i64 [ %iv.outer.next, %outer.latch ] 31 outer.header: ; preds = %outer.latch, %entry 32 %iv.outer = phi i64 [ 0, %entry ], [ %iv.outer.next, %outer.latch ] 41 br i1 %v9, label %outer.latch, label %inner.body 43 outer.latch: ; preds = %inner.body 49 exit: ; preds = %outer.latch 50 %v4.lcssa = phi i64 [ %iv.outer.next, %outer.latch ] 51 %v8.lcssa.lcssa = phi i64 [ %v8.lcssa, %outer.latch ] 64 ; CHECK-NEXT: %0 = phi i64 [ %iv.outer, %outer.latch ] 78 outer.header: ; preds = %outer.latch, %entry [all …]
|
/external/llvm-project/llvm/test/Transforms/SimpleLoopUnswitch/ |
D | trivial-unswitch.ll | 201 br i1 %cond1, label %latch, label %loop_exit 203 ; CHECK-NEXT: br label %latch 205 latch: 208 ; CHECK: latch: 244 br i1 %cond2, label %latch, label %loop_exit 247 ; CHECK-NEXT: br i1 %cond2, label %latch, label %loop_exit 249 latch: 252 ; CHECK: latch: 289 switch i32 %cond1, label %latch [ 294 ; CHECK-NEXT: br label %latch [all …]
|