[InstCombine] Signed saturation patterns
[llvm-core.git] / test / CodeGen / AArch64 / windows-SEH-support.ll
blob499ae782beb1c5dcf615418fa73423aea855ab62
1 ; RUN: llc -mtriple aarch64-unknown-windows-msvc -filetype asm -o /dev/null %s
3 declare dllimport void @f() local_unnamed_addr
5 declare dso_local i32 @__C_specific_handler(...)
7 define hidden swiftcc void @g() unnamed_addr personality i8* bitcast (i32 (...)* @__C_specific_handler to i8*) {
8 entry:
9   invoke void @f() to label %__try.cont unwind label %catch.dispatch
11 catch.dispatch:                                   ; preds = %entry
12   %0 = catchswitch within none [label %__except] unwind to caller
14 __except:
15   %1 = catchpad within %0 [i8* null]              ; preds = %catch.dispatch
16   catchret from %1 to label %__try.cont
18 __try.cont:                                       ; preds = %__except, %entry
19   ret void
22 define hidden fastcc void @h() unnamed_addr personality i8* bitcast (i32 (...)* @__C_specific_handler to i8*) {
23 entry:
24   invoke void @f() to label %__try.cont unwind label %catch.dispatch
26 catch.dispatch:                                   ; preds = %entry
27   %0 = catchswitch within none [label %__except] unwind to caller
29 __except:                                         ; preds = %catch.dispatch
30   %1 = catchpad within %0 [i8* null]
31   catchret from %1 to label %__try.cont
33 __try.cont:                                       ; preds = %__except, %entry
34   ret void