27 lines
609 B
LLVM
27 lines
609 B
LLVM
; RUN: llc < %s | FileCheck %s
|
|
|
|
target triple = "i686--windows-msvc"
|
|
|
|
declare { i8*, i32 } @param2_ret2(i32, i32)
|
|
declare i32 @__CxxFrameHandler3(...)
|
|
|
|
|
|
define void @test_reserved_regs() minsize optsize personality i32 (...)* @__CxxFrameHandler3 {
|
|
; CHECK-LABEL: test_reserved_regs:
|
|
; CHECK: calll _param2_ret2
|
|
; CHECK-NEXT: popl %ecx
|
|
; CHECK-NEXT: popl %edi
|
|
start:
|
|
%s = alloca i64
|
|
store i64 4, i64* %s
|
|
%0 = invoke { i8*, i32 } @param2_ret2(i32 0, i32 1)
|
|
to label %out unwind label %cleanup
|
|
|
|
out:
|
|
ret void
|
|
|
|
cleanup:
|
|
%cp = cleanuppad within none []
|
|
cleanupret from %cp unwind to caller
|
|
}
|