diff options
Diffstat (limited to 'llvm/test/Transforms/PlaceSafepoints/basic.ll')
-rw-r--r-- | llvm/test/Transforms/PlaceSafepoints/basic.ll | 35 |
1 files changed, 9 insertions, 26 deletions
diff --git a/llvm/test/Transforms/PlaceSafepoints/basic.ll b/llvm/test/Transforms/PlaceSafepoints/basic.ll index ade219e3703..5cbf2798f4a 100644 --- a/llvm/test/Transforms/PlaceSafepoints/basic.ll +++ b/llvm/test/Transforms/PlaceSafepoints/basic.ll @@ -6,7 +6,7 @@ define void @test_entry() gc "statepoint-example" { ; CHECK-LABEL: @test_entry entry: ; CHECK-LABEL: entry -; CHECK: statepoint +; CHECK: call void @do_safepoint ret void } @@ -14,7 +14,7 @@ entry: define void @test_negative() { ; CHECK-LABEL: @test_negative entry: -; CHECK-NOT: statepoint +; CHECK-NOT: do_safepoint ret void } @@ -25,13 +25,12 @@ define void @test_backedge() gc "statepoint-example" { entry: ; CHECK-LABEL: entry ; This statepoint is technically not required, but we don't exploit that yet. -; CHECK: statepoint +; CHECK: call void @do_safepoint br label %other ; CHECK-LABEL: other -; CHECK: statepoint +; CHECK: call void @do_safepoint other: - call void undef() br label %other } @@ -41,40 +40,24 @@ define void @test_unreachable() gc "statepoint-example" { ; CHECK-LABEL: test_unreachable entry: ; CHECK-LABEL: entry -; CHECK: statepoint +; CHECK: call void @do_safepoint ret void ; CHECK-NOT: other -; CHECK-NOT: statepoint +; CHECK-NOT: do_safepoint other: br label %other } declare void @foo() -; Do we turn a call into it's own statepoint -define void @test_simple_call() gc "statepoint-example" { -; CHECK-LABEL: test_simple_call -entry: - br label %other -other: -; CHECK-LABEL: other -; CHECK: statepoint -; CHECK-NOT: gc.result - call void @foo() - ret void -} - declare zeroext i1 @i1_return_i1(i1) define i1 @test_call_with_result() gc "statepoint-example" { ; CHECK-LABEL: test_call_with_result -; This is checking that a statepoint_poll + statepoint + result is -; inserted for a function that takes 1 argument. -; CHECK: gc.statepoint.p0f_isVoidf -; CHECK: gc.statepoint.p0f_i1i1f -; CHECK: (i64 2882400000, i32 0, i1 (i1)* @i1_return_i1, i32 1, i32 0, i1 false, i32 0, i32 0) -; CHECK: %call12 = call i1 @llvm.experimental.gc.result.i1 +; This is checking that a statepoint_poll is inserted for a function +; that takes 1 argument. +; CHECK: call void @do_safepoint entry: %call1 = tail call i1 (i1) @i1_return_i1(i1 false) ret i1 %call1 |