/external/llvm/test/Transforms/PlaceSafepoints/ |
D | basic.ll | 5 define void @test_entry() gc "statepoint-example" { 9 ; CHECK: statepoint 17 ; CHECK-NOT: statepoint 23 define void @test_backedge() gc "statepoint-example" { 27 ; This statepoint is technically not required, but we don't exploit that yet. 28 ; CHECK: statepoint 32 ; CHECK: statepoint 40 define void @test_unreachable() gc "statepoint-example" { 44 ; CHECK: statepoint 48 ; CHECK-NOT: statepoint [all …]
|
D | finite-loops.ll | 7 define void @test1(i32) gc "statepoint-example" { 10 ; CHECK: statepoint 12 ; CHECK-NOT: statepoint 28 define void @test2(i32) gc "statepoint-example" { 31 ; CHECK: statepoint 33 ; CHECK-NOT: statepoint 52 define void @test3(i8 %upper) gc "statepoint-example" { 55 ; CHECK: statepoint 57 ; CHECK-NOT: statepoint
|
D | split-backedge.ll | 4 define void @test(i32, i1 %cond) gc "statepoint-example" { 7 ; CHECK: gc.statepoint 23 define void @test2(i32, i1 %cond) gc "statepoint-example" { 26 ; CHECK: gc.statepoint 29 ; CHECK: gc.statepoint
|
D | call-in-loop.ll | 8 define void @test1() gc "statepoint-example" { 13 ; CHECK: statepoint 18 ; CHECK: @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo 19 ; CHECK-NOT: statepoint
|
D | invokes.ll | 6 …ddrspace(1)* @test_basic(i64 addrspace(1)* %obj, i64 addrspace(1)* %obj1) gc "statepoint-example" { 10 ; CHECK: statepoint 32 …ce(1)* @test_two_invokes(i64 addrspace(1)* %obj, i64 addrspace(1)* %obj1) gc "statepoint-example" { 36 ; CHECK: statepoint 44 ; CHECK: statepoint 64 define i64 addrspace(1)* @test_phi_node(i1 %cond, i64 addrspace(1)* %obj) gc "statepoint-example" {
|
/external/llvm/test/Transforms/RewriteStatepointsForGC/ |
D | basics.ll | 1 ; This is a collection of really basic tests for gc.statepoint rewriting. 7 define i8 addrspace(1)* @test1(i8 addrspace(1)* %obj) gc "statepoint-example" { 10 ; CHECK-NEXT: gc.statepoint 13 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 18 define i8 addrspace(1)* @test2(i8 addrspace(1)* %obj) gc "statepoint-example" { 21 ; CHECK-NEXT: gc.statepoint 23 ; CHECK-NEXT: gc.statepoint 26 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 27 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 32 define i8 @test3(i8 addrspace(1)* %obj) gc "statepoint-example" { [all …]
|
D | liveness-basics.ll | 8 define i64 addrspace(1)* @test1(i1 %cmp, i64 addrspace(1)* %obj) gc "statepoint-example" { 15 ; CHECK-NEXT: gc.statepoint 18 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 23 ; CHECK-NEXT: gc.statepoint 26 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 37 define i64 addrspace(1)* @test2(i1 %cmp, i64 addrspace(1)** %loc) gc "statepoint-example" { 41 ; CHECK-NEXT: gc.statepoint 43 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 49 ; CHECK-NEXT: gc.statepoint 54 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… [all …]
|
D | relocation.ll | 7 …)* @test1(i64 addrspace(1)* %obj, i64 addrspace(1)* %obj2, i1 %condition) gc "statepoint-example" { 12 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 39 define void @test2() gc "statepoint-example" { 64 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 73 define void @relocate_merge(i1 %cnd, i8 addrspace(1)* %arg) gc "statepoint-example" { 80 ; CHECK: gc.statepoint 82 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 87 ; CHECK: gc.statepoint 89 …%safepoint_token1 = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoid… 103 ; Make sure a use in a statepoint gets properly relocated at a previous one. [all …]
|
D | preprocess.ll | 7 define void @test6(i64 addrspace(1)* %obj) gc "statepoint-example" { 14 ; CHECK-NEXT: gc.statepoint 19 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 27 ; Need to delete unreachable gc.statepoint call 28 define void @test7() gc "statepoint-example" { 30 ; CHECK-NOT: gc.statepoint 35 …call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @foo, i32… 40 ; Need to delete unreachable gc.statepoint invoke - tested seperately given 42 define void @test8() gc "statepoint-example" { 44 ; CHECK-NOT: gc.statepoint [all …]
|
D | live-vector.ll | 1 ; Test that we can correctly handle vectors of pointers in statepoint 6 define i64 addrspace(1)* @test(i64 addrspace(1)* %obj) gc "statepoint-example" { 8 ; CHECK: gc.statepoint 12 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 17 define <2 x i64 addrspace(1)*> @test2(<2 x i64 addrspace(1)*> %obj) gc "statepoint-example" { 21 ; CHECK-NEXT: gc.statepoint 28 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 33 define <2 x i64 addrspace(1)*> @test3(<2 x i64 addrspace(1)*>* %ptr) gc "statepoint-example" { 38 ; CHECK-NEXT: gc.statepoint 46 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… [all …]
|
D | base-pointers-4.ll | 10 define void @test(i32 %condition) gc "statepoint-example" { 16 … call i32 (i64 addrspace(1)* ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_p1i64f(i64 a… 18 … call i32 (i64 addrspace(1)* ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_p1i64f(i64 a… 40 …l i32 (void (i64 addrspace(1)*)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidp1i64f… 44 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 51 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...) 52 declare i32 @llvm.experimental.gc.statepoint.p0f_p1i64f(i64 addrspace(1)* ()*, i32, i32, ...) 53 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidp1i64f(void (i64 addrspace(1)*)*, i32, i32, …
|
D | base-pointers.ll | 8 define void @def_use_safepoint() gc "statepoint-example" { 19 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 27 …est1(i32 %caller, i8 addrspace(1)* %a, i8 addrspace(1)* %b, i32 %unknown) gc "statepoint-example" { 60 …l i32 (void (i64 addrspace(1)*)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidp1i64f… 69 …est2(i1 %cnd, i64 addrspace(1)* %base_obj, i64 addrspace(1)* %base_arg2) gc "statepoint-example" { 87 ; CHECK: statepoint 94 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 99 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...) 100 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidp1i64f(void (i64 addrspace(1)*)*, i32, i32, …
|
D | relocate_invoke_result.ll | 13 define i64* addrspace(1)* @test() gc "statepoint-example" { 25 ;; CHECK-NEXT: gc.statepoint 27 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 31 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...)
|
D | base-pointers-9.ll | 7 define void @maybe_GEP(i64 addrspace(1)* %base_obj) gc "statepoint-example" { 16 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 21 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...)
|
D | base-pointers-2.ll | 6 define i64 addrspace(1)* @test(i64 addrspace(1)* %base_obj, i1 %runtime_condition) gc "statepoint-e… 16 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 21 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...)
|
/external/llvm/test/CodeGen/X86/ |
D | statepoint-call-lowering.ll | 14 define i1 @test_i1_return() gc "statepoint-example" { 17 ; state arguments to the statepoint 23 …%safepoint_token = tail call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(… 28 define i32 @test_i32_return() gc "statepoint-example" { 35 …%safepoint_token = tail call i32 (i32 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32… 40 define i32* @test_i32ptr_return() gc "statepoint-example" { 47 …%safepoint_token = tail call i32 (i32* ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_p0… 52 define float @test_float_return() gc "statepoint-example" { 59 …%safepoint_token = tail call i32 (float ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_f… 64 define i1 @test_relocate(i32 addrspace(1)* %a) gc "statepoint-example" { [all …]
|
D | statepoint-forward.ll | 4 ; about memory which contains potential gc references across a statepoint. 10 ; - cross a statepoint 16 ; If not at a statepoint, we could forward known memory values 23 define i1 @test_load_forward(i32 addrspace(1)* addrspace(1)* %p) gc "statepoint-example" { 28 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 42 i32 addrspace(1)* %v) gc "statepoint-example" { 47 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 62 ; of the pointer and is thus not safe to reuse after a statepoint. 69 ; statepoint does not provide the collector with this root. 70 define i1 @test_load_forward_nongc_heap(i32 addrspace(1)** %p) gc "statepoint-example" { [all …]
|
D | statepoint-allocas.ll | 12 ; to the statepoint? 13 define i32 addrspace(1)* @test(i32 addrspace(1)* %ptr) gc "statepoint-example" { 24 …call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1, i32 0… 30 define i32 addrspace(1)* @test2(i32 addrspace(1)* %ptr) gc "statepoint-example" { 41 …call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1, i32 0… 45 declare i32 @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()*, i32, i32, ...)
|
D | statepoint-stack-usage.ll | 11 …alls(i32 addrspace(1)* %a, i32 addrspace(1)* %b, i32 addrspace(1)* %c) #1 gc "statepoint-example" { 17 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 24 …%safepoint_token2 = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i… 34 …irst(i32 addrspace(1)* %a, i32 addrspace(1)* %b, i32 addrspace(1)* %c) #1 gc "statepoint-example" { 40 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 47 …%safepoint_token2 = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i… 58 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...)
|
/external/llvm/test/CodeGen/Generic/ |
D | overloaded-intrinsic-name.ll | 10 ; and gc.statepoint. Note that it has nothing to do with gc.* 15 define i32* @test_iAny(i32* %v) gc "statepoint-example" { 16 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 22 define float* @test_fAny(float* %v) gc "statepoint-example" { 23 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 29 define [3 x i32]* @test_aAny([3 x i32]* %v) gc "statepoint-example" { 30 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 36 define <3 x i32>* @test_vAny(<3 x i32>* %v) gc "statepoint-example" { 37 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 45 define %struct.test* @test_struct(%struct.test* %v) gc "statepoint-example" { [all …]
|
/external/llvm/test/Transforms/InstCombine/ |
D | statepoint.ll | 3 ; pointers being relocated at a statepoint. 8 define i1 @test_negative(i32 addrspace(1)* %p) gc "statepoint-example" { 10 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 19 define i1 @test_nonnull(i32 addrspace(1)* nonnull %p) gc "statepoint-example" { 21 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 29 define i1 @test_null() gc "statepoint-example" { 31 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 40 define i1 @test_undef() gc "statepoint-example" { 42 …%safepoint_token = tail call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_is… 51 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...)
|
/external/llvm/test/Transforms/CodeGenPrepare/ |
D | statepoint-relocate.ll | 8 define i32 @test_sor_basic(i32* %base) gc "statepoint-example" { 13 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 20 define i32 @test_sor_two_derived(i32* %base) gc "statepoint-example" { 28 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 36 define i32 @test_sor_ooo(i32* %base) gc "statepoint-example" { 41 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 48 define i32 @test_sor_gep_smallint([3 x i32]* %base) gc "statepoint-example" { 53 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… 60 define i32 @test_sor_gep_largeint([3 x i32]* %base) gc "statepoint-example" { 65 …%tok = call i32 (i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1… [all …]
|
/external/llvm/docs/ |
D | Statepoints.rst | 72 term "statepoint" as used in this document refers exclusively to the 99 unrelocated value after a statepoint. This prevents the optimizer 102 associated with) for each statepoint. 115 <statepoint-utilities>` described below. 118 intrinsic calls known collectively as a "statepoint relocation sequence". 125 gc "statepoint-example" { 144 gc "statepoint-example" { 145 …%0 = call i32 (void ()*, i32, i32, ...)* @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* @fo… 156 Instead, the statepoint intrinsic marks the actual site of the 157 safepoint or statepoint. The statepoint returns a token value (which [all …]
|
/external/llvm/test/Verifier/ |
D | statepoint.ll | 6 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...) 10 define i64 addrspace(1)* @test1(i8 addrspace(1)* %arg) gc "statepoint-example" { 13 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 20 ; CHECK: statepoint 32 define void @test2(i8 addrspace(1)* %arg, i64 addrspace(1)* %arg2) gc "statepoint-example" { 42 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf… 48 ; CHECK: statepoint 55 define i8 addrspace(1)* @test3(i8 addrspace(1)* %obj, i8 addrspace(1)* %obj1) gc "statepoint-exampl… 59 ; CHECK: statepoint 60 …%0 = invoke i32 (void ()*, i32, i32, ...)* @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()* u…
|
D | invalid-statepoint2.ll | 3 ; CHECK: gc.statepoint: number of deoptimization arguments must be a constant integer 8 declare i32 @llvm.experimental.gc.statepoint.p0f_isVoidf(void ()*, i32, i32, ...) 12 define i64 addrspace(1)* @test1(i8 addrspace(1)* %arg, i32 %val) gc "statepoint-example" { 15 …%safepoint_token = call i32 (void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf…
|