Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / PlaceSafepoints / statepoint-coreclr.ll
blob74ca5591c84c56fb4f63b0aab4c9a70323b2bef7
1 ; RUN: opt < %s -S -passes=place-safepoints | FileCheck %s
3 ; Basic test to make sure that safepoints are placed
4 ; for CoreCLR GC
6 declare void @foo()
8 define void @test_simple_call() gc "coreclr" {
9 ; CHECK-LABEL: test_simple_call
10 entry:
11 ; CHECK: call void @do_safepoint
12   br label %other
13 other:
14   call void @foo()
15   ret void
18 ; This function is inlined when inserting a poll.  To avoid recursive
19 ; issues, make sure we don't place safepoints in it.
20 declare void @do_safepoint()
21 define void @gc.safepoint_poll() {
22 ; CHECK-LABEL: gc.safepoint_poll
23 ; CHECK-LABEL: entry
24 ; CHECK-NEXT: do_safepoint
25 ; CHECK-NEXT: ret void
26 entry:
27   call void @do_safepoint()
28   ret void