| /freebsd-12.1/contrib/llvm/lib/CodeGen/ |
| H A D | WinEHPrepare.cpp | 224 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(TI)) { in getEHPadFromPredecessor() local 225 if (CatchSwitch->getParentPad() != ParentPad) in getEHPadFromPredecessor() 243 assert(FuncInfo.EHPadStateMap.count(CatchSwitch) == 0 && in calculateCXXStateNumbers() 252 FuncInfo.EHPadStateMap[CatchSwitch] = TryLow; in calculateCXXStateNumbers() 350 assert(CatchSwitch->getNumHandlers() == 1 && in calculateSEHStateNumbers() 363 FuncInfo.EHPadStateMap[CatchSwitch] = TryState; in calculateSEHStateNumbers() 417 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(EHPad)) in isTopLevelPadForMSVC() local 419 CatchSwitch->unwindsToCaller(); in isTopLevelPadForMSVC() 573 assert(CatchSwitch->getNumHandlers()); in calculateClrEHStateNumbers() 574 FuncInfo.EHPadStateMap[CatchSwitch] = CatchState; in calculateClrEHStateNumbers() [all …]
|
| H A D | WasmEHPrepare.cpp | 405 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(UnwindPad)) in calculateWasmEHInfo() local 407 EHInfo.setEHPadUnwindDest(&BB, *CatchSwitch->handlers().begin()); in calculateWasmEHInfo() 424 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(UnwindPad)) in calculateWasmEHInfo() local 426 EHInfo.setThrowUnwindDest(&BB, *CatchSwitch->handlers().begin()); in calculateWasmEHInfo()
|
| H A D | TargetLoweringBase.cpp | 1455 case CatchSwitch: return 0; in InstructionOpcodeToISD()
|
| /freebsd-12.1/contrib/llvm/lib/Transforms/Utils/ |
| H A D | InlineFunction.cpp | 248 if (CatchSwitch->hasUnwindDest()) { in getUnwindDestTokenHelper() 257 for (auto HI = CatchSwitch->handler_begin(), in getUnwindDestTokenHelper() 258 HE = CatchSwitch->handler_end(); in getUnwindDestTokenHelper() 706 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I)) { in HandleInlinedEHPad() local 707 if (CatchSwitch->unwindsToCaller()) { in HandleInlinedEHPad() 733 CatchSwitch->getParentPad(), UnwindDest, in HandleInlinedEHPad() 734 CatchSwitch->getNumHandlers(), CatchSwitch->getName(), in HandleInlinedEHPad() 735 CatchSwitch); in HandleInlinedEHPad() 736 for (BasicBlock *PadBB : CatchSwitch->handlers()) in HandleInlinedEHPad() 2062 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I)) { in InlineFunction() local [all …]
|
| H A D | Local.cpp | 2110 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(Terminator)) { in markAliveBlocks() local 2139 for (CatchSwitchInst::handler_iterator I = CatchSwitch->handler_begin(), in markAliveBlocks() 2140 E = CatchSwitch->handler_end(); in markAliveBlocks() 2145 CatchSwitch->removeHandler(I); in markAliveBlocks() 2175 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(TI)) { in removeUnwindEdge() local 2177 CatchSwitch->getParentPad(), nullptr, CatchSwitch->getNumHandlers(), in removeUnwindEdge() 2178 CatchSwitch->getName(), CatchSwitch); in removeUnwindEdge() 2179 for (BasicBlock *PadBB : CatchSwitch->handlers()) in removeUnwindEdge() 2183 UnwindDest = CatchSwitch->getUnwindDest(); in removeUnwindEdge()
|
| /freebsd-12.1/contrib/llvm/lib/Transforms/Coroutines/ |
| H A D | CoroFrame.cpp | 438 static Instruction *splitBeforeCatchSwitch(CatchSwitchInst *CatchSwitch) { in splitBeforeCatchSwitch() argument 439 BasicBlock *CurrentBlock = CatchSwitch->getParent(); in splitBeforeCatchSwitch() 440 BasicBlock *NewBlock = CurrentBlock->splitBasicBlock(CatchSwitch); in splitBeforeCatchSwitch() 444 CleanupPadInst::Create(CatchSwitch->getParentPad(), {}, "", CurrentBlock); in splitBeforeCatchSwitch() 665 else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(PadInst)) in ehAwareSplitEdge() local 666 ParentPad = CatchSwitch->getParentPad(); in ehAwareSplitEdge()
|
| /freebsd-12.1/contrib/llvm/tools/clang/lib/CodeGen/ |
| H A D | CGException.cpp | 913 llvm::CatchSwitchInst *CatchSwitch = in emitCatchPadBlock() local 928 CatchSwitch, {TypeInfo.RTTI, CGF.Builder.getInt32(TypeInfo.Flags), in emitCatchPadBlock() 931 CGF.Builder.CreateCatchPad(CatchSwitch, {TypeInfo.RTTI}); in emitCatchPadBlock() 934 CatchSwitch->addHandler(Handler.Block); in emitCatchPadBlock() 957 llvm::CatchSwitchInst *CatchSwitch = in emitWasmCatchPadBlock() local 963 CatchSwitch->addHandler(WasmCatchStartBlock); in emitWasmCatchPadBlock() 975 auto *CPI = CGF.Builder.CreateCatchPad(CatchSwitch, CatchTypes); in emitWasmCatchPadBlock() 1181 auto *CatchSwitch = in ExitCXXTryStmt() local 1183 WasmCatchStartBlock = CatchSwitch->hasUnwindDest() in ExitCXXTryStmt() 1184 ? CatchSwitch->getSuccessor(1) in ExitCXXTryStmt() [all …]
|
| /freebsd-12.1/contrib/llvm/include/llvm/IR/ |
| H A D | Instruction.h | 195 case Instruction::CatchSwitch: 575 case Instruction::CatchSwitch:
|
| H A D | Instructions.h | 4077 return I->getOpcode() == Instruction::CatchSwitch; 4135 explicit CatchPadInst(Value *CatchSwitch, ArrayRef<Value *> Args, 4138 : FuncletPadInst(Instruction::CatchPad, CatchSwitch, Args, Values, 4140 explicit CatchPadInst(Value *CatchSwitch, ArrayRef<Value *> Args, 4143 : FuncletPadInst(Instruction::CatchPad, CatchSwitch, Args, Values, 4147 static CatchPadInst *Create(Value *CatchSwitch, ArrayRef<Value *> Args, 4152 CatchPadInst(CatchSwitch, Args, Values, NameStr, InsertBefore); 4159 CatchPadInst(CatchSwitch, Args, Values, NameStr, InsertAtEnd); 4166 void setCatchSwitch(Value *CatchSwitch) { 4167 assert(CatchSwitch); [all …]
|
| H A D | Instruction.def | 137 HANDLE_TERM_INST (10, CatchSwitch , CatchSwitchInst)
|
| /freebsd-12.1/contrib/llvm/lib/IR/ |
| H A D | Verifier.cpp | 3813 &FPI, FirstUser, CatchSwitch); in visitFuncletPadInst() 3821 BasicBlock *BB = CatchSwitch.getParent(); in visitCatchSwitchInst() 3826 &CatchSwitch); in visitCatchSwitchInst() 3830 Assert(BB->getFirstNonPHI() == &CatchSwitch, in visitCatchSwitchInst() 3832 &CatchSwitch); in visitCatchSwitchInst() 3834 auto *ParentPad = CatchSwitch.getParentPad(); in visitCatchSwitchInst() 3843 &CatchSwitch); in visitCatchSwitchInst() 3847 SiblingFuncletInfo[&CatchSwitch] = &CatchSwitch; in visitCatchSwitchInst() 3850 Assert(CatchSwitch.getNumHandlers() != 0, in visitCatchSwitchInst() 3858 visitEHPadPredecessors(CatchSwitch); in visitCatchSwitchInst() [all …]
|
| H A D | Instruction.cpp | 304 case CatchSwitch: return "catchswitch"; in getOpcodeName() 591 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(this)) in mayThrow() local 592 return CatchSwitch->unwindsToCaller(); in mayThrow()
|
| H A D | Core.cpp | 3093 void LLVMAddHandler(LLVMValueRef CatchSwitch, LLVMBasicBlockRef Dest) { in LLVMAddHandler() argument 3094 unwrap<CatchSwitchInst>(CatchSwitch)->addHandler(unwrap(Dest)); in LLVMAddHandler() 3097 unsigned LLVMGetNumHandlers(LLVMValueRef CatchSwitch) { in LLVMGetNumHandlers() argument 3098 return unwrap<CatchSwitchInst>(CatchSwitch)->getNumHandlers(); in LLVMGetNumHandlers() 3101 void LLVMGetHandlers(LLVMValueRef CatchSwitch, LLVMBasicBlockRef *Handlers) { in LLVMGetHandlers() argument 3102 CatchSwitchInst *CSI = unwrap<CatchSwitchInst>(CatchSwitch); in LLVMGetHandlers() 3112 void LLVMSetParentCatchSwitch(LLVMValueRef CatchPad, LLVMValueRef CatchSwitch) { in LLVMSetParentCatchSwitch() argument 3114 ->setCatchSwitch(unwrap<CatchSwitchInst>(CatchSwitch)); in LLVMSetParentCatchSwitch()
|
| H A D | AsmWriter.cpp | 3708 } else if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(&I)) { in printInstruction() local 3710 writeOperand(CatchSwitch->getParentPad(), /*PrintType=*/false); in printInstruction() 3713 for (const BasicBlock *PadBB : CatchSwitch->handlers()) { in printInstruction() 3720 if (const BasicBlock *UnwindDest = CatchSwitch->getUnwindDest()) in printInstruction()
|
| H A D | Instructions.cpp | 851 : Instruction(ParentPad->getType(), Instruction::CatchSwitch, nullptr, 0, in CatchSwitchInst() 862 : Instruction(ParentPad->getType(), Instruction::CatchSwitch, nullptr, 0, in CatchSwitchInst() 871 : Instruction(CSI.getType(), Instruction::CatchSwitch, nullptr, in CatchSwitchInst()
|
| /freebsd-12.1/contrib/llvm/include/llvm-c/ |
| H A D | Core.h | 3460 void LLVMAddHandler(LLVMValueRef CatchSwitch, LLVMBasicBlockRef Dest); 3463 unsigned LLVMGetNumHandlers(LLVMValueRef CatchSwitch); 3476 void LLVMGetHandlers(LLVMValueRef CatchSwitch, LLVMBasicBlockRef *Handlers); 3502 void LLVMSetParentCatchSwitch(LLVMValueRef CatchPad, LLVMValueRef CatchSwitch);
|
| /freebsd-12.1/contrib/llvm/lib/Bitcode/Writer/ |
| H A D | BitcodeWriter.cpp | 2764 case Instruction::CatchSwitch: { in writeInstruction() 2766 const auto &CatchSwitch = cast<CatchSwitchInst>(I); in writeInstruction() local 2768 pushValue(CatchSwitch.getParentPad(), InstID, Vals); in writeInstruction() 2770 unsigned NumHandlers = CatchSwitch.getNumHandlers(); in writeInstruction() 2772 for (const BasicBlock *CatchPadBB : CatchSwitch.handlers()) in writeInstruction() 2775 if (CatchSwitch.hasUnwindDest()) in writeInstruction() 2776 Vals.push_back(VE.getValueID(CatchSwitch.getUnwindDest())); in writeInstruction()
|
| /freebsd-12.1/contrib/llvm/lib/AsmParser/ |
| H A D | LLLexer.cpp | 879 INSTKEYWORD(catchswitch, CatchSwitch); in LexIdentifier()
|
| H A D | LLParser.cpp | 6098 auto *CatchSwitch = in ParseCatchSwitch() local 6101 CatchSwitch->addHandler(DestBB); in ParseCatchSwitch() 6102 Inst = CatchSwitch; in ParseCatchSwitch() 6109 Value *CatchSwitch = nullptr; in ParseCatchPad() local 6117 if (ParseValue(Type::getTokenTy(Context), CatchSwitch, PFS)) in ParseCatchPad() 6124 Inst = CatchPadInst::Create(CatchSwitch, Args); in ParseCatchPad()
|
| /freebsd-12.1/contrib/llvm/lib/Analysis/ |
| H A D | ValueTracking.cpp | 3916 case Instruction::CatchSwitch: in isSafeToSpeculativelyExecute() 4295 if (const auto *CatchSwitch = dyn_cast<CatchSwitchInst>(I)) in isGuaranteedToTransferExecutionToSuccessor() local 4296 return !CatchSwitch->unwindsToCaller(); in isGuaranteedToTransferExecutionToSuccessor()
|
| /freebsd-12.1/contrib/llvm/lib/Bitcode/Reader/ |
| H A D | BitcodeReader.cpp | 4012 auto *CatchSwitch = in parseFunctionBody() local 4015 CatchSwitch->addHandler(Handler); in parseFunctionBody() 4016 I = CatchSwitch; in parseFunctionBody()
|
| /freebsd-12.1/contrib/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | SelectionDAGBuilder.cpp | 1507 } else if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(Pad)) { in findUnwindDestinations() local 1509 for (const BasicBlock *CatchPadBB : CatchSwitch->handlers()) { in findUnwindDestinations() 1517 NewEHPadBB = CatchSwitch->getUnwindDest(); in findUnwindDestinations()
|