Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-01.ll
Show First 20 Lines • Show All 54 Lines • ▼ Show 20 Lines | cleanup2: | ||||
br label %cleanup | br label %cleanup | ||||
cleanup: | cleanup: | ||||
call i8* @llvm.coro.free(token %1, i8* %2) | call i8* @llvm.coro.free(token %1, i8* %2) | ||||
br label %coro.ret | br label %coro.ret | ||||
coro.ret: | coro.ret: | ||||
call i1 @llvm.coro.end(i8* null, i1 false) | call i1 @llvm.coro.end(i8* null, i1 false) | ||||
ret void | ret void | ||||
} | } | ||||
; CHECK-LABEL: @a.resume( | |||||
; CHECK: %a.reload.addr{{[0-9]+}} = getelementptr inbounds %a.Frame, %a.Frame* %FramePtr[[APositon:.*]] | ; check that there is only one %struct.big_structure in the frame. | ||||
; CHECK: %b.reload.addr{{[0-9]+}} = getelementptr inbounds %a.Frame, %a.Frame* %FramePtr[[APositon]] | ; CHECK: %a.Frame = type { void (%a.Frame*)*, void (%a.Frame*)*, %"struct.task::promise_type", %struct.big_structure, i1 } | ||||
declare token @llvm.coro.id(i32, i8* readnone, i8* nocapture readonly, i8*) | declare token @llvm.coro.id(i32, i8* readnone, i8* nocapture readonly, i8*) | ||||
declare i1 @llvm.coro.alloc(token) #3 | declare i1 @llvm.coro.alloc(token) #3 | ||||
declare i64 @llvm.coro.size.i64() #5 | declare i64 @llvm.coro.size.i64() #5 | ||||
declare i8* @llvm.coro.begin(token, i8* writeonly) #3 | declare i8* @llvm.coro.begin(token, i8* writeonly) #3 | ||||
declare token @llvm.coro.save(i8*) #3 | declare token @llvm.coro.save(i8*) #3 | ||||
declare i8* @llvm.coro.frame() #5 | declare i8* @llvm.coro.frame() #5 | ||||
declare i8 @llvm.coro.suspend(token, i1) #3 | declare i8 @llvm.coro.suspend(token, i1) #3 | ||||
declare i8* @llvm.coro.free(token, i8* nocapture readonly) #2 | declare i8* @llvm.coro.free(token, i8* nocapture readonly) #2 | ||||
declare i1 @llvm.coro.end(i8*, i1) #3 | declare i1 @llvm.coro.end(i8*, i1) #3 | ||||
declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #4 | declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #4 | ||||
declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #4 | declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #4 | ||||
No newline at end of file |