xref: /llvm-project/llvm/test/Verifier/operand-bundles-wineh.ll (revision bb4a04e794aadadc411e7e42a661c6d836d9e8a0)
1; RUN: not opt -passes=verify < %s 2>&1 | FileCheck %s
2
3define void @report_missing() personality ptr @__CxxFrameHandler3 {
4entry:
5  invoke void @may_throw() to label %eh.cont unwind label %catch.dispatch
6
7catch.dispatch:
8  %0 = catchswitch within none [label %catch] unwind to caller
9
10catch:
11  %1 = catchpad within %0 [ptr null, i32 0, ptr null]
12  br label %catch.cont
13
14catch.cont:
15; CHECK: Missing funclet token on intrinsic call
16  %2 = call ptr @llvm.objc.retain(ptr null)
17  catchret from %1 to label %eh.cont
18
19eh.cont:
20  ret void
21}
22
23declare void @may_throw()
24declare i32 @__CxxFrameHandler3(...)
25
26declare ptr @llvm.objc.retain(ptr) #0
27
28attributes #0 = { nounwind }
29