1 ; RUN: llc < %s -mtriple=x86_64-pc-windows-msvc | FileCheck %s
2 ; EHCont Guard is currently only available on Windows
4 ; CHECK: .set @feat.00, 16384
6 ; CHECK: .section .gehcont$y
8 define dso_local void @"?func1@@YAXXZ"() #0 personality ptr @__CxxFrameHandler3 {
10 invoke void @"?func2@@YAXXZ"()
11 to label %invoke.cont unwind label %catch.dispatch
12 catch.dispatch: ; preds = %entry
13 %0 = catchswitch within none [label %catch] unwind to caller
14 catch: ; preds = %catch.dispatch
15 %1 = catchpad within %0 [ptr null, i32 64, ptr null]
16 catchret from %1 to label %catchret.dest
17 catchret.dest: ; preds = %catch
19 try.cont: ; preds = %catchret.dest, %invoke.cont
21 invoke.cont: ; preds = %entry
25 declare dso_local void @"?func2@@YAXXZ"() #1
26 declare dso_local i32 @__CxxFrameHandler3(...)
28 !llvm.module.flags = !{!0}
29 !0 = !{i32 1, !"ehcontguard", i32 1}