1 ; RUN: not opt -S -verify < %s 2>&1 | FileCheck %s 2 3 declare void @llvm.experimental.guard(i1, ...) 4 5 declare void @unknown() 6 7 define void @f_nodeopt() { 8 entry: 9 call void(i1, ...) @llvm.experimental.guard(i1 undef, i32 1, i32 2) 10 ; CHECK: guard must have exactly one "deopt" operand bundle 11 ret void 12 } 13 14 define void @f_invoke() personality i8 3 { 15 entry: 16 invoke void(i1, ...) @llvm.experimental.guard(i1 undef, i32 0, float 0.0) [ "deopt"() ] to label %ok unwind label %not_ok 17 ; CHECK: guard cannot be invoked 18 19 ok: 20 ret void 21 22 not_ok: 23 %0 = landingpad { i8*, i32 } 24 filter [0 x i8*] zeroinitializer 25 ret void 26 } 27