[rtsan] Add fork/execve interceptors (#117198)
[llvm-project.git] / llvm / test / Transforms / RewriteStatepointsForGC / pr56493.ll
blobe5677cb495fb16218e14a8a66246c9fe18b4ea91
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2 ; RUN: opt -passes=rewrite-statepoints-for-gc -S < %s | FileCheck %s
4 ; Make sure this doesn't crash.
5 define void @test() gc "statepoint-example" personality ptr @zot {
6 ; CHECK-LABEL: @test(
7 ; CHECK-NEXT:  bb:
8 ; CHECK-NEXT:    [[STATEPOINT_TOKEN:%.*]] = call token (i64, i32, ptr, i32, i32, ...) @llvm.experimental.gc.statepoint.p0(i64 2882400000, i32 0, ptr elementtype(void (ptr addrspace(1), i64, ptr addrspace(1), i64, i64)) @__llvm_memcpy_element_unordered_atomic_safepoint_4, i32 5, i32 0, ptr addrspace(1) null, i64 undef, ptr addrspace(1) null, i64 ptrtoint (ptr addrspace(1) getelementptr inbounds (i8, ptr addrspace(1) null, i64 16) to i64), i64 undef, i32 0, i32 0) [ "deopt"() ]
9 ; CHECK-NEXT:    ret void
11 bb:
12   call void @llvm.memcpy.element.unordered.atomic.p1.p1.i64(ptr addrspace(1) elementtype(i32) align 8 undef, ptr addrspace(1) elementtype(i32) align 16 getelementptr inbounds (i8, ptr addrspace(1) null, i64 16), i64 undef, i32 4) #3 [ "deopt"() ]
13   ret void
16 declare ptr @zot()
18 declare void @llvm.memcpy.element.unordered.atomic.p1.p1.i64(ptr addrspace(1) nocapture writeonly, ptr addrspace(1) nocapture readonly, i64, i32 immarg)