|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Declarations
include/llvm/IR/Instruction.def 136 HANDLE_TERM_INST (10, CatchSwitch , CatchSwitchInst)
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h 54 class CatchSwitchInst;
References
include/llvm/IR/IRBuilder.h 845 InstTy *Insert(InstTy *I, const Twine &Name = "") const {
845 InstTy *Insert(InstTy *I, const Twine &Name = "") const {
1043 CatchSwitchInst *CreateCatchSwitch(Value *ParentPad, BasicBlock *UnwindBB,
1046 return Insert(CatchSwitchInst::Create(ParentPad, UnwindBB, NumHandlers),
include/llvm/IR/InstVisitor.h 258 RetTy visitCatchSwitchInst(CatchSwitchInst &I) {
include/llvm/IR/Instructions.h 4227 CatchSwitchInst(const CatchSwitchInst &CSI);
4255 CatchSwitchInst *cloneImpl() const;
4258 static CatchSwitchInst *Create(Value *ParentPad, BasicBlock *UnwindDest,
4262 return new CatchSwitchInst(ParentPad, UnwindDest, NumHandlers, NameStr,
4266 static CatchSwitchInst *Create(Value *ParentPad, BasicBlock *UnwindDest,
4269 return new CatchSwitchInst(ParentPad, UnwindDest, NumHandlers, NameStr,
4464 CatchSwitchInst *getCatchSwitch() const {
4465 return cast<CatchSwitchInst>(Op<-1>());
include/llvm/IR/User.h 127 template <int Idx, typename U> static Use &OpFrom(const U *that) {
129 ? OperandTraits<U>::op_end(const_cast<U*>(that))[Idx]
130 : OperandTraits<U>::op_begin(const_cast<U*>(that))[Idx];
include/llvm/Support/Casting.h 58 return To::classof(&Val);
77 return isa_impl<To, From>::doit(Val);
92 return isa_impl<To, From>::doit(*Val);
106 return isa_impl<To, From>::doit(*Val);
122 return isa_impl_wrap<To, SimpleFrom,
132 return isa_impl_cl<To,FromTy>::doit(Val);
142 return isa_impl_wrap<X, const Y,
168 using ret_type = const To &; // Normal case, return Ty&
172 using ret_type = To *; // Pointer arg case, return Ty*
176 using ret_type = const To *; // Constant pointer arg case, return const Ty*
198 using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
204 using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
210 To, From, typename simplify_type<From>::SimpleType>::ret_type;
218 static typename cast_retty<To, From>::ret_type doit(From &Val) {
219 return cast_convert_val<To, SimpleFrom,
227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
228 typename cast_retty<To, FromTy>::ret_type Res2
248 typename cast_retty<X, const Y>::ret_type>::type
252 X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
258 return cast_convert_val<X, Y,
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
331 typename cast_retty<X, const Y>::ret_type>::type
337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
338 return isa<X>(Val) ? cast<X>(Val) : nullptr;
338 return isa<X>(Val) ? cast<X>(Val) : nullptr;
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
lib/Analysis/ScalarEvolutionExpander.cpp 97 } else if (isa<CatchSwitchInst>(IP)) {
lib/Analysis/ValueTracking.cpp 4252 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I))
4252 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I))
lib/AsmParser/LLParser.cpp 6267 auto *CatchSwitch =
6268 CatchSwitchInst::Create(ParentPad, UnwindBB, Table.size());
lib/Bitcode/Reader/BitcodeReader.cpp 4318 auto *CatchSwitch =
4319 CatchSwitchInst::Create(ParentPad, UnwindDest, NumHandlers);
lib/Bitcode/Writer/BitcodeWriter.cpp 2818 const auto &CatchSwitch = cast<CatchSwitchInst>(I);
2818 const auto &CatchSwitch = cast<CatchSwitchInst>(I);
lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp 244 if (isa<CatchSwitchInst>(PadInst)) {
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp 1661 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(Pad)) {
1716 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(Pad)) {
1760 void SelectionDAGBuilder::visitCatchSwitch(const CatchSwitchInst &CSI) {
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h 637 void visitCatchSwitch(const CatchSwitchInst &I);
lib/CodeGen/WasmEHPrepare.cpp 365 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(UnwindPad))
365 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(UnwindPad))
lib/CodeGen/WinEHPrepare.cpp 223 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(TI)) {
241 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(FirstNonPHI)) {
265 if (auto *InnerCatchSwitch = dyn_cast<CatchSwitchInst>(UserI)) {
343 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(FirstNonPHI)) {
375 if (auto *InnerCatchSwitch = dyn_cast<CatchSwitchInst>(UserI)) {
416 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(EHPad))
512 else if (const auto *CSI = dyn_cast<CatchSwitchInst>(FirstNonPHI))
512 else if (const auto *CSI = dyn_cast<CatchSwitchInst>(FirstNonPHI))
549 const auto *CatchSwitch = cast<CatchSwitchInst>(Pad);
549 const auto *CatchSwitch = cast<CatchSwitchInst>(Pad);
613 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(U)) {
635 if (auto *CSI = dyn_cast<CatchSwitchInst>(UserUnwindPad))
697 if (DemoteCatchSwitchPHIOnly && !isa<CatchSwitchInst>(BB->getFirstNonPHI()))
lib/IR/AsmWriter.cpp 3795 } else if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(&I)) {
3795 } else if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(&I)) {
lib/IR/Core.cpp 2866 } else if (CatchSwitchInst *CSI = dyn_cast<CatchSwitchInst>(unwrap(Invoke))) {
2866 } else if (CatchSwitchInst *CSI = dyn_cast<CatchSwitchInst>(unwrap(Invoke))) {
2879 } else if (CatchSwitchInst *CSI = dyn_cast<CatchSwitchInst>(unwrap(Invoke))) {
2879 } else if (CatchSwitchInst *CSI = dyn_cast<CatchSwitchInst>(unwrap(Invoke))) {
3224 unwrap<CatchSwitchInst>(CatchSwitch)->addHandler(unwrap(Dest));
3228 return unwrap<CatchSwitchInst>(CatchSwitch)->getNumHandlers();
3232 CatchSwitchInst *CSI = unwrap<CatchSwitchInst>(CatchSwitch);
3232 CatchSwitchInst *CSI = unwrap<CatchSwitchInst>(CatchSwitch);
3233 for (CatchSwitchInst::handler_iterator I = CSI->handler_begin(),
3244 ->setCatchSwitch(unwrap<CatchSwitchInst>(CatchSwitch));
lib/IR/Instruction.cpp 597 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(this))
597 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(this))
lib/IR/Instructions.cpp 1015 CatchSwitchInst::CatchSwitchInst(const CatchSwitchInst &CSI)
4298 CatchSwitchInst *CatchSwitchInst::cloneImpl() const {
4299 return new CatchSwitchInst(*this);
lib/IR/Verifier.cpp 493 void visitCatchSwitchInst(CatchSwitchInst &CatchSwitch);
2083 else if (auto *CSI = dyn_cast<CatchSwitchInst>(Terminator))
2083 else if (auto *CSI = dyn_cast<CatchSwitchInst>(Terminator))
3583 return cast<CatchSwitchInst>(EHPad)->getParentPad();
3636 } else if (auto *CSI = dyn_cast<CatchSwitchInst>(TI)) {
3636 } else if (auto *CSI = dyn_cast<CatchSwitchInst>(TI)) {
3779 } else if (auto *CSI = dyn_cast<CatchSwitchInst>(U)) {
3779 } else if (auto *CSI = dyn_cast<CatchSwitchInst>(U)) {
3906 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(FPI.getParentPad())) {
3906 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(FPI.getParentPad())) {
3923 void Verifier::visitCatchSwitchInst(CatchSwitchInst &CatchSwitch) {
lib/Transforms/Coroutines/CoroFrame.cpp 552 static Instruction *splitBeforeCatchSwitch(CatchSwitchInst *CatchSwitch) {
692 if (auto *CSI = dyn_cast<CatchSwitchInst>(DefBlock->getTerminator()))
692 if (auto *CSI = dyn_cast<CatchSwitchInst>(DefBlock->getTerminator()))
799 else if (auto *CS = dyn_cast<CatchSwitchInst>(TI))
799 else if (auto *CS = dyn_cast<CatchSwitchInst>(TI))
857 else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(PadInst))
857 else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(PadInst))
lib/Transforms/InstCombine/InstCombineCompares.cpp 582 if (isa<CatchSwitchInst>(PN->getParent()->getTerminator()))
lib/Transforms/InstCombine/InstructionCombining.cpp 3135 if (isa<CatchSwitchInst>(DestBlock->getTerminator()))
lib/Transforms/Instrumentation/InstrProfiling.cpp 321 return isa<CatchSwitchInst>(Exit->getTerminator());
lib/Transforms/Instrumentation/MemorySanitizer.cpp 3564 void visitCatchSwitchInst(CatchSwitchInst &I) {
lib/Transforms/ObjCARC/ObjCARCContract.cpp 659 while (isa<CatchSwitchInst>(InsertBB->getFirstNonPHI())) {
lib/Transforms/ObjCARC/PtrState.cpp 270 if (isa<CatchSwitchInst>(InsertAfter))
lib/Transforms/Scalar/IndVarSimplify.cpp 1559 if (isa<CatchSwitchInst>(UsePhi->getParent()->getTerminator()))
lib/Transforms/Scalar/LICM.cpp 411 return isa<CatchSwitchInst>(Exit->getTerminator());
1336 if (isa<CatchSwitchInst>(BB->getTerminator()))
lib/Transforms/Scalar/LoopStrengthReduce.cpp 3435 if (isa<CatchSwitchInst>(UserInst->getParent()->getTerminator()))
5015 if (isa<CatchSwitchInst>(Tentative))
5320 !isa<CatchSwitchInst>(BB->getTerminator())) {
5525 isa<CatchSwitchInst>(FirstNonPHI))
5527 if (isa<CatchSwitchInst>(PredBB->getFirstNonPHI()))
lib/Transforms/Scalar/Reassociate.cpp 886 if (isa<CatchSwitchInst>(InsertPt))
lib/Transforms/Scalar/SCCP.cpp 624 void visitCatchSwitchInst(CatchSwitchInst &CPI) {
lib/Transforms/Utils/CodeExtractor.cpp 136 if (const auto *CSI = dyn_cast<CatchSwitchInst>(I)) {
136 if (const auto *CSI = dyn_cast<CatchSwitchInst>(I)) {
lib/Transforms/Utils/InlineFunction.cpp 221 return cast<CatchSwitchInst>(EHPad)->getParentPad();
240 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(CurrentPad)) {
240 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(CurrentPad)) {
260 if (!isa<CleanupPadInst>(Child) && !isa<CatchSwitchInst>(Child))
300 } else if (isa<CleanupPadInst>(U) || isa<CatchSwitchInst>(U)) {
485 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(UselessPad)) {
485 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(UselessPad)) {
496 if (isa<CatchSwitchInst>(U) || isa<CleanupPadInst>(U))
509 if (isa<CatchSwitchInst>(U) || isa<CleanupPadInst>(U))
699 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I)) {
699 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I)) {
725 auto *NewCatchSwitch = CatchSwitchInst::Create(
725 auto *NewCatchSwitch = CatchSwitchInst::Create(
1636 if (isa<CatchSwitchInst>(CalledBB.getFirstNonPHI()))
2101 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I)) {
2101 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I)) {
lib/Transforms/Utils/Local.cpp 2124 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(Terminator)) {
2124 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(Terminator)) {
2153 for (CatchSwitchInst::handler_iterator I = CatchSwitch->handler_begin(),
2189 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(TI)) {
2189 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(TI)) {
2190 auto *NewCatchSwitch = CatchSwitchInst::Create(
2190 auto *NewCatchSwitch = CatchSwitchInst::Create(
lib/Transforms/Utils/SimplifyCFG.cpp 4261 } else if (auto *CSI = dyn_cast<CatchSwitchInst>(TI)) {
4261 } else if (auto *CSI = dyn_cast<CatchSwitchInst>(TI)) {
4268 for (CatchSwitchInst::handler_iterator I = CSI->handler_begin(),
lib/Transforms/Vectorize/SLPVectorizer.cpp 4325 if (isa<CatchSwitchInst>(IncomingTerminator)) {
tools/clang/lib/CodeGen/Address.h 108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGException.cpp 910 llvm::CatchSwitchInst *CatchSwitch =
954 llvm::CatchSwitchInst *CatchSwitch =
1178 auto *CatchSwitch =
1179 cast<llvm::CatchSwitchInst>(DispatchBlock->getFirstNonPHI());
unittests/Analysis/SparsePropagation.cpp 528 CatchSwitchInst *CatchSwitch =