/dports/devel/llvm10/llvm-10.0.1.src/test/Transforms/Coroutines/ |
H A D | coro-split-00.ll | 17 %hdl = call i8* @llvm.coro.begin(token %id, i8* %phi) 27 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 31 call i1 @llvm.coro.end(i8* %hdl, i1 0) 32 ret i8* %hdl 44 ; CHECK: ret i8* %hdl
|
H A D | ex0.ll | 9 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 23 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 27 call i1 @llvm.coro.end(i8* %hdl, i1 0) 28 ret i8* %hdl 34 %hdl = call i8* @f(i32 4) 35 call void @llvm.coro.resume(i8* %hdl) 36 call void @llvm.coro.resume(i8* %hdl) 37 call void @llvm.coro.destroy(i8* %hdl)
|
H A D | ex2.ll | 15 %hdl = call noalias i8* @llvm.coro.begin(token %id, i8* %phi) 25 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 32 call i1 @llvm.coro.end(i8* %hdl, i1 false) 33 ret i8* %hdl 39 %hdl = call i8* @f(i32 4) 40 call void @llvm.coro.resume(i8* %hdl) 41 call void @llvm.coro.resume(i8* %hdl) 42 call void @llvm.coro.destroy(i8* %hdl)
|
H A D | ex5.ll | 9 %hdl = call noalias i8* @llvm.coro.begin(token %id, i8* %alloc) 30 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 34 call i1 @llvm.coro.end(i8* %hdl, i1 false) 35 ret i8* %hdl 54 %hdl = call i8* @f(i32 4) 57 call void @llvm.coro.resume(i8* %hdl) 58 %done = call i1 @llvm.coro.done(i8* %hdl) 61 call void @llvm.coro.destroy(i8* %hdl)
|
H A D | coro-cleanup.ll | 7 define void @uses_library_support_coro_intrinsics(i8* %hdl) { 9 call void @llvm.coro.resume(i8* %hdl) 10 call void @llvm.coro.destroy(i8* %hdl) 11 call i1 @llvm.coro.done(i8* %hdl)
|
H A D | coro-early.ll | 9 define void @callResume(i8* %hdl) { 12 ; CHECK-NEXT: %0 = call i8* @llvm.coro.subfn.addr(i8* %hdl, i8 0) 14 ; CHECK-NEXT: call fastcc void %1(i8* %hdl) 15 call void @llvm.coro.resume(i8* %hdl) 17 ; CHECK-NEXT: %2 = call i8* @llvm.coro.subfn.addr(i8* %hdl, i8 1) 19 ; CHECK-NEXT: call fastcc void %3(i8* %hdl) 20 call void @llvm.coro.destroy(i8* %hdl) 27 define void @eh(i8* %hdl) personality i8* null { 30 ; CHECK-NEXT: %0 = call i8* @llvm.coro.subfn.addr(i8* %hdl, i8 0) 32 ; CHECK-NEXT: invoke fastcc void %1(i8* %hdl) [all …]
|
H A D | coro-frame-arrayalloca.ll | 15 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 29 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 33 call i1 @llvm.coro.end(i8* %hdl, i1 0) 34 ret i8* %hdl
|
H A D | coro-split-hidden.ll | 19 %hdl = call i8* @llvm.coro.begin(token %id, i8* %phi) 29 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 33 call i1 @llvm.coro.end(i8* %hdl, i1 0) 34 ret i8* %hdl 46 ; CHECK: ret i8* %hdl
|
H A D | coro-split-musttail1.ll | 30 %hdl = call i8* @g() 31 %addr2 = call i8* @llvm.coro.subfn.addr(i8* %hdl, i8 0) 33 call fastcc void %pv2(i8* %hdl) 69 ; CHECK: %[[hdl:.+]] = call i8* @g() 70 ; CHECK-NEXT: %[[addr2:.+]] = call i8* @llvm.coro.subfn.addr(i8* %[[hdl]], i8 0) 72 ; CHECK-NEXT: musttail call fastcc void %[[pv2]](i8* %[[hdl]])
|
H A D | coro-swifterror.ll | 7 %hdl = call i8* @llvm.coro.begin(token %id, i8* null) 25 call i1 @llvm.coro.end(i8* %hdl, i1 0) 68 %hdl = call i8* @llvm.coro.begin(token %id, i8* null) 85 call i1 @llvm.coro.end(i8* %hdl, i1 0)
|
H A D | ex1.ll | 9 %hdl = call noalias i8* @llvm.coro.begin(token %id, i8* %alloc) 19 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 23 call i1 @llvm.coro.end(i8* %hdl, i1 false) 24 ret i8* %hdl 30 %hdl = call i8* @f(i32 4) 31 call void @llvm.coro.resume(i8* %hdl) 32 call void @llvm.coro.resume(i8* %hdl) 33 call void @llvm.coro.destroy(i8* %hdl)
|
H A D | ex3.ll | 9 %hdl = call noalias i8* @llvm.coro.begin(token %id, i8* %alloc) 25 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 29 call i1 @llvm.coro.end(i8* %hdl, i1 false) 30 ret i8* %hdl 36 %hdl = call i8* @f(i32 4) 37 call void @llvm.coro.resume(i8* %hdl) 38 call void @llvm.coro.resume(i8* %hdl) 39 call void @llvm.coro.destroy(i8* %hdl)
|
H A D | ex4.ll | 17 %hdl = call noalias i8* @llvm.coro.begin(token %id, i8* %phi) 27 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 31 call i1 @llvm.coro.end(i8* %hdl, i1 false) 32 ret i8* %hdl 38 %hdl = call i8* @f(i32 4) 39 %promise.addr.raw = call i8* @llvm.coro.promise(i8* %hdl, i32 4, i1 false) 43 call void @llvm.coro.resume(i8* %hdl) 46 call void @llvm.coro.resume(i8* %hdl) 49 call void @llvm.coro.destroy(i8* %hdl)
|
H A D | no-suspend.ll | 37 call i1 @llvm.coro.end(i8* %hdl, i1 false) 67 %save = call token @llvm.coro.save(i8* %hdl) 72 call fastcc void %bres(i8* %hdl) 89 call i1 @llvm.coro.end(i8* %hdl, i1 false) 140 call i1 @llvm.coro.end(i8* %hdl, i1 false) 187 call fastcc void %bres(i8* %hdl) 204 call i1 @llvm.coro.end(i8* %hdl, i1 false) 242 call fastcc void %bcast(i8* %hdl) 290 call fastcc void %bcast(i8* %hdl) 341 call fastcc void %bcast(i8* %hdl) [all …]
|
H A D | ArgAddr.ll | 42 %hdl = call i8* @f(i32 4) 43 call void @llvm.coro.resume(i8* %hdl) 44 call void @llvm.coro.resume(i8* %hdl) 45 call void @llvm.coro.destroy(i8* %hdl)
|
H A D | coro-elide.ll | 29 ret i8* %hdl 35 %hdl = call i8* @f() 40 call fastcc void %1(i8* %hdl) 45 call fastcc void %3(i8* %hdl) 54 %hdl = call i8* @f() 59 invoke void %1(i8* %hdl) 79 call fastcc void %1(i8* %hdl) 84 call fastcc void %3(i8* %hdl) 92 define void @no_devirt_no_begin(i8* %hdl) { 98 call fastcc void %1(i8* %hdl) [all …]
|
H A D | coro-frame-unreachable.ll | 11 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 22 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 27 call i1 @llvm.coro.end(i8* %hdl, i1 0) 28 ret i8* %hdl
|
H A D | coro-frame.ll | 12 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 25 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 29 call i1 @llvm.coro.end(i8* %hdl, i1 0) 30 ret i8* %hdl 44 ; CHECK: ret i8* %hdl
|
H A D | coro-padding.ll | 15 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 25 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 29 call i1 @llvm.coro.end(i8* %hdl, i1 0) 30 ret i8* %hdl
|
H A D | coro-split-01.ll | 15 %hdl = call i8* @llvm.coro.begin(token %id, i8* %phi) 25 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 29 call i1 @llvm.coro.end(i8* %hdl, i1 0) 30 ret i8* %hdl 34 %hdl = call i8* @f() 35 call void @llvm.coro.resume(i8* %hdl)
|
H A D | coro-split-eh.ll | 8 %hdl = call i8* @llvm.coro.begin(token %id, i8* null) 20 call i1 @llvm.coro.end(i8* %hdl, i1 0) 22 ret i8* %hdl 47 ; CHECK: ret i8* %hdl 59 %hdl = call i8* @llvm.coro.begin(token %id, i8* null) 71 call i1 @llvm.coro.end(i8* %hdl, i1 0) 73 ret i8* %hdl 94 ; CHECK: ret i8* %hdl
|
H A D | coro-alloc-with-param.ll | 11 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 20 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 24 call i1 @llvm.coro.end(i8* %hdl, i1 0) 25 ret i8* %hdl 37 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 46 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 50 call i1 @llvm.coro.end(i8* %hdl, i1 0) 51 ret i8* %hdl 62 ; CHECK: ret i8* %hdl 68 ; CHECK: ret i8* %hdl
|
H A D | coro-catchswitch.ll | 13 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 57 call i1 @llvm.coro.end(i8* %hdl, i1 0)
|
H A D | coro-eh-aware-edge-split.ll | 13 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 63 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 81 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 125 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl) 143 %hdl = call i8* @llvm.coro.begin(token %id, i8* %alloc) 187 %mem = call i8* @llvm.coro.free(token %id, i8* %hdl)
|
/dports/devel/llvm10/llvm-10.0.1.src/docs/ |
H A D | Coroutines.rst | 32 %hdl = call i8* @f(i32 4) 33 call void @llvm.coro.resume(i8* %hdl) 226 ret i8* %hdl 502 call void @async_op1(i8* %hdl) 508 call void @async_op2(i8* %hdl) 556 ret i8* %hdl 566 %hdl = call i8* @f(i32 4) 623 %hdl = call i8* @f(i32 4) 663 int __next__(void* hdl) { 664 coro.resume(hdl); [all …]
|