reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

include/llvm/IR/Instruction.def
  133 HANDLE_TERM_INST  ( 7, Unreachable   , UnreachableInst)
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
   87 class UnreachableInst;

References

include/llvm/CodeGen/TargetLowering.h
 3513            isa<UnreachableInst>(Call.getInstruction()->getNextNode()));
include/llvm/IR/IRBuilder.h
  845   InstTy *Insert(InstTy *I, const Twine &Name = "") const {
  845   InstTy *Insert(InstTy *I, const Twine &Name = "") const {
 1065   UnreachableInst *CreateUnreachable() {
 1066     return Insert(new UnreachableInst(Context));
include/llvm/IR/InstVisitor.h
  249   RetTy visitUnreachableInst(UnreachableInst &I) {
include/llvm/IR/Instructions.h
 4676   UnreachableInst *cloneImpl() const;
include/llvm/LinkAllIR.h
   45       (void)new llvm::UnreachableInst(Context);
include/llvm/Support/Casting.h
   58     return To::classof(&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,
  153   return isa<X>(Val);
  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;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  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/BranchProbabilityInfo.cpp
  146     if (isa<UnreachableInst>(TI) ||
lib/Analysis/DomTreeUpdater.cpp
  228   new UnreachableInst(DelBB->getContext(), DelBB);
lib/Analysis/InlineCost.cpp
  290   bool visitUnreachableInst(UnreachableInst &I);
  800     if (isa<UnreachableInst>(II->getNormalDest()->getTerminator()))
  802   } else if (isa<UnreachableInst>(Call.getParent()->getTerminator()))
 1532 bool CallAnalyzer::visitUnreachableInst(UnreachableInst &I) {
lib/Analysis/Lint.cpp
  121     void visitUnreachableInst(UnreachableInst &I);
  640 void Lint::visitUnreachableInst(UnreachableInst &I) {
lib/Analysis/ValueTracking.cpp
 4258   if (isa<UnreachableInst>(I))
lib/AsmParser/LLParser.cpp
 5701   case lltok::kw_unreachable: Inst = new UnreachableInst(Context); return false;
lib/Bitcode/Reader/BitcodeReader.cpp
 4628       I = new UnreachableInst(Context);
lib/CodeGen/Analysis.cpp
  528         CS.getCallingConv() != CallingConv::Tail) || !isa<UnreachableInst>(Term)))
lib/CodeGen/DwarfEHPrepare.cpp
  172       new UnreachableInst(Ctx, RI);
  229     new UnreachableInst(Ctx, UnwindBB);
  254   new UnreachableInst(Ctx, UnwindBB);
lib/CodeGen/GlobalISel/IRTranslator.cpp
  798       FallthroughUnreachable = isa<UnreachableInst>(
lib/CodeGen/IndirectBrExpandPass.cpp
   98         (void)new UnreachableInst(F.getContext(), IBr);
  161       (void)new UnreachableInst(F.getContext(), IBr);
lib/CodeGen/MIRParser/MIRParser.cpp
  266   new UnreachableInst(Context, BB);
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
 2941 void SelectionDAGBuilder::visitUnreachable(const UnreachableInst &I) {
10148       FallthroughUnreachable = isa<UnreachableInst>(
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  635   void visitUnreachable(const UnreachableInst &I);
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  487       if (isa<UnreachableInst>(Term) || isa<ReturnInst>(Term))
lib/ExecutionEngine/Interpreter/Execution.cpp
  930 void Interpreter::visitUnreachableInst(UnreachableInst &I) {
lib/ExecutionEngine/Interpreter/Interpreter.h
  156   void visitUnreachableInst(UnreachableInst &I);
lib/IR/Instructions.cpp
 4306 UnreachableInst *UnreachableInst::cloneImpl() const {
 4308   return new UnreachableInst(Context);
lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
  179     } else if (isa<UnreachableInst>(BB->getTerminator())) {
  219       new UnreachableInst(F.getContext(), UnreachableBlock);
lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
  315   if (!isa<UndefValue>(Exec) && !isa<UnreachableInst>(FirstInsertionPt))
lib/Target/Mips/Mips16HardFloat.cpp
  344   new UnreachableInst(Context, BB);
  480   new UnreachableInst(FStub->getContext(), BB);
lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp
  214     new UnreachableInst(M->getContext(), BB);
lib/Target/WebAssembly/WebAssemblyLowerGlobalDtors.cpp
  177       new UnreachableInst(C, FailBB);
lib/Transforms/Coroutines/CoroElide.cpp
  160         !isa<UnreachableInst>(TI))
lib/Transforms/IPO/Attributor.cpp
 2215       if (isa_and_nonnull<UnreachableInst>(SplitPos))
lib/Transforms/IPO/HotColdSplitting.cpp
  263       NoBlocksReturn &= isa<UnreachableInst>(BB->getTerminator());
lib/Transforms/IPO/PruneEH.cpp
  207             !isa<UnreachableInst>(I)) {
  216           new UnreachableInst(BB->getContext(), &*BB);
lib/Transforms/Instrumentation/AddressSanitizer.cpp
 1721       CrashTerm = new UnreachableInst(*C, CrashBlock);
lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
  664     new UnreachableInst(*Ctx, BB);
lib/Transforms/Instrumentation/SanitizerCoverage.cpp
  515   if (isa<UnreachableInst>(BB->getFirstNonPHIOrDbgOrLifetime()))
  583   if (isa<UnreachableInst>(F.getEntryBlock().getTerminator()))
lib/Transforms/Scalar/LoopFuse.cpp
 1210     new UnreachableInst(FC1.Preheader->getContext(), FC1.Preheader);
 1376     new UnreachableInst(FC1GuardBlock->getContext(), FC1GuardBlock);
 1446     new UnreachableInst(FC0.ExitBlock->getContext(), FC0.ExitBlock);
 1452     new UnreachableInst(FC1.Preheader->getContext(), FC1.Preheader);
lib/Transforms/Scalar/LoopUnswitch.cpp
 1554     new UnreachableInst(Context, Abort);
lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
 1387       new UnreachableInst(RI->getContext(), RI);
lib/Transforms/Scalar/SCCP.cpp
  651   void visitUnreachableInst(UnreachableInst &I) { /*returns void*/ }
 2156           new UnreachableInst(InstBB->getContext(), InstBB);
lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
  596       !isa<UnreachableInst>(SI.getDefaultDest()->getTerminator())) {
lib/Transforms/Utils/BasicBlockUtils.cpp
   80     new UnreachableInst(BB->getContext(), BB);
  279   new UnreachableInst(BB->getContext(), BB);
  825       CheckTerm = new UnreachableInst(C, ThenBlock);
lib/Transforms/Utils/BreakCriticalEdges.cpp
  157       isa<UnreachableInst>(DestBB->getFirstNonPHIOrDbgOrLifetime()))
lib/Transforms/Utils/FlattenCFG.cpp
  311     new UnreachableInst(CB->getContext(), CB);
lib/Transforms/Utils/Local.cpp
  167     if (isa<UnreachableInst>(DefaultDest->getFirstNonPHIOrDbg()) &&
  340         new UnreachableInst(BB->getContext(), BB);
  720   new UnreachableInst(PredBB->getContext(), PredBB);
 1063   new UnreachableInst(BB->getContext(), BB);
 1924   auto *UI = new UnreachableInst(I->getContext(), I);
 1924   auto *UI = new UnreachableInst(I->getContext(), I);
 2054               if (!isa<UnreachableInst>(CI->getNextNode())) {
 2072           if (!isa<UnreachableInst>(CI->getNextNode())) {
 2256       new UnreachableInst(BB->getContext(), BB);
lib/Transforms/Utils/LoopUnroll.cpp
  815         new UnreachableInst(Term->getContext(), Term);
lib/Transforms/Utils/LowerSwitch.cpp
  476   if (isa<UnreachableInst>(Default->getFirstNonPHIOrDbg())) {
lib/Transforms/Utils/SimplifyCFG.cpp
  199   bool SimplifyUnreachable(UnreachableInst *UI);
 3500     new UnreachableInst(OldTerm->getContext(), OldTerm);
 3887     new UnreachableInst(RI->getContext(), TrivialBB);
 4162 bool SimplifyCFGOpt::SimplifyUnreachable(UnreachableInst *UI) {
 4228         new UnreachableInst(TI->getContext(), TI);
 4290         new UnreachableInst(CSI->getContext(), CSI);
 4295       new UnreachableInst(TI->getContext(), TI);
 4331   new UnreachableInst(Switch->getContext(), NewTerminator);
 4341       !isa<UnreachableInst>(SI->getDefaultDest()->getFirstNonPHIOrDbg());
 4485       !isa<UnreachableInst>(SI->getDefaultDest()->getFirstNonPHIOrDbg());
 4814        !isa<UnreachableInst>(DefaultDest->getFirstNonPHIOrDbg())))
 5416       !isa<UnreachableInst>(SI->getDefaultDest()->getFirstNonPHIOrDbg());
 5703     new UnreachableInst(IBI->getContext(), IBI);
 6104   } else if (auto *UI = dyn_cast<UnreachableInst>(BB->getTerminator())) {
 6104   } else if (auto *UI = dyn_cast<UnreachableInst>(BB->getTerminator())) {
lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
   54     else if (isa<UnreachableInst>(I.getTerminator()))
   65     new UnreachableInst(F.getContext(), UnreachableBlock);
lib/Transforms/Vectorize/VPlan.cpp
  144     if (isa<UnreachableInst>(PredBBTerminator)) {
  184     UnreachableInst *Terminator = State->Builder.CreateUnreachable();
  402   UnreachableInst *Terminator = State->Builder.CreateUnreachable();
tools/bugpoint/CrashDebugger.cpp
  479         new UnreachableInst(BB.getContext(), &BB);
tools/clang/lib/CodeGen/CodeGenFunction.h
 1647       new llvm::UnreachableInst(getLLVMContext(), UnreachableBlock);
tools/llvm-diff/DifferenceEngine.cpp
  361     } else if (isa<UnreachableInst>(L)) {
tools/polly/lib/Analysis/ScopBuilder.cpp
  899     if (isa<UnreachableInst>(TI))
tools/polly/lib/Analysis/ScopDetection.cpp
  643   if (AllowUnreachable && isa<UnreachableInst>(TI))
 1649       isa<UnreachableInst>(CurRegion.getExit()->getTerminator())) {
tools/polly/lib/CodeGen/BlockGenerators.cpp
 1561     if (isa<UnreachableInst>(TI)) {
 1564       new UnreachableInst(BBCopyEnd->getContext(), BBCopyEnd);
tools/polly/lib/Support/ScopHelper.cpp
  407   if (isa<UnreachableInst>(BB.getTerminator()))
  489     if (isa<UnreachableInst>(ExitBlock->getTerminator()))
  526     if (!L && isa<UnreachableInst>(BB->getTerminator()) && BB->getPrevNode())
unittests/Analysis/BranchProbabilityInfoTest.cpp
   68   new UnreachableInst(C, PreExitBB);
unittests/IR/CFGBuilder.cpp
   43   if (isa<UnreachableInst>(From->getTerminator()))
unittests/IR/DominatorTreeTest.cpp
  393         new UnreachableInst(C->getContext(), C);
unittests/IR/MetadataTest.cpp
 2741   (void)new UnreachableInst(Context, BasicBlock::Create(Context, "bb", F));