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

Declarations

include/llvm/IR/Instruction.def
  130 HANDLE_TERM_INST  ( 4, IndirectBr    , IndirectBrInst)
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
   70 class IndirectBrInst;

References

include/llvm/IR/IRBuilder.h
  845   InstTy *Insert(InstTy *I, const Twine &Name = "") const {
  845   InstTy *Insert(InstTy *I, const Twine &Name = "") const {
  938   IndirectBrInst *CreateIndirectBr(Value *Addr, unsigned NumDests = 10) {
  939     return Insert(IndirectBrInst::Create(Addr, NumDests));
include/llvm/IR/InstVisitor.h
  243   RetTy visitIndirectBrInst(IndirectBrInst &I) {
include/llvm/IR/Instructions.h
 3526   IndirectBrInst(const IndirectBrInst &IBI);
 3552   IndirectBrInst *cloneImpl() const;
 3582   static IndirectBrInst *Create(Value *Address, unsigned NumDests,
 3584     return new IndirectBrInst(Address, NumDests, InsertBefore);
 3587   static IndirectBrInst *Create(Value *Address, unsigned NumDests,
 3589     return new IndirectBrInst(Address, NumDests, InsertAtEnd);
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
  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/BranchProbabilityInfo.cpp
  257   if (!(isa<BranchInst>(TI) || isa<SwitchInst>(TI) || isa<IndirectBrInst>(TI)))
lib/Analysis/CodeMetrics.cpp
  191   notDuplicatable |= isa<IndirectBrInst>(BB->getTerminator());
lib/Analysis/InlineCost.cpp
  286   bool visitIndirectBrInst(IndirectBrInst &IBI);
 1501 bool CallAnalyzer::visitIndirectBrInst(IndirectBrInst &IBI) {
 2095     if (isa<IndirectBrInst>(BI->getTerminator()))
lib/Analysis/Lint.cpp
  118     void visitIndirectBrInst(IndirectBrInst &I);
  618 void Lint::visitIndirectBrInst(IndirectBrInst &I) {
lib/Analysis/LoopInfo.cpp
  477     if (isa<IndirectBrInst>(BB->getTerminator()) ||
lib/AsmParser/LLParser.cpp
 6028   IndirectBrInst *IBI = IndirectBrInst::Create(Address, DestList.size());
 6028   IndirectBrInst *IBI = IndirectBrInst::Create(Address, DestList.size());
lib/Bitcode/Reader/BitcodeReader.cpp
 4452       IndirectBrInst *IBI = IndirectBrInst::Create(Address, NumDests);
 4452       IndirectBrInst *IBI = IndirectBrInst::Create(Address, NumDests);
lib/CodeGen/CodeGenPrepare.cpp
  696         isa<IndirectBrInst>(Pred->getTerminator())))
 6828   if (!isa<IndirectBrInst>(SrcBlock->getTerminator()))
lib/CodeGen/GlobalISel/IRTranslator.cpp
  838   const IndirectBrInst &BrInst = cast<IndirectBrInst>(U);
  838   const IndirectBrInst &BrInst = cast<IndirectBrInst>(U);
lib/CodeGen/IndirectBrExpandPass.cpp
   87   SmallVector<IndirectBrInst *, 1> IndirectBrs;
   94     if (auto *IBr = dyn_cast<IndirectBrInst>(BB.getTerminator())) {
   94     if (auto *IBr = dyn_cast<IndirectBrInst>(BB.getTerminator())) {
  160     for (auto *IBr : IndirectBrs) {
  172   for (auto *IBr : IndirectBrs) {
  202     for (auto *IBr : IndirectBrs) {
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
 2920 void SelectionDAGBuilder::visitIndirectBr(const IndirectBrInst &I) {
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  634   void visitIndirectBr(const IndirectBrInst &I);
lib/ExecutionEngine/Interpreter/Execution.cpp
  966 void Interpreter::visitIndirectBrInst(IndirectBrInst &I) {
lib/ExecutionEngine/Interpreter/Interpreter.h
  125   void visitIndirectBrInst(IndirectBrInst &I);
lib/IR/AsmWriter.cpp
 3743   } else if (isa<IndirectBrInst>(I)) {
lib/IR/Core.cpp
 3199   unwrap<IndirectBrInst>(IndirectBr)->addDestination(unwrap(Dest));
lib/IR/Instructions.cpp
 4055 IndirectBrInst::IndirectBrInst(const IndirectBrInst &IBI)
 4268 IndirectBrInst *IndirectBrInst::cloneImpl() const {
 4269   return new IndirectBrInst(*this);
lib/IR/Verifier.cpp
  471   void visitIndirectBrInst(IndirectBrInst &BI);
 2482 void Verifier::visitIndirectBrInst(IndirectBrInst &BI) {
 4039     else if (IndirectBrInst *IBI = dyn_cast<IndirectBrInst>(&I))
 4039     else if (IndirectBrInst *IBI = dyn_cast<IndirectBrInst>(&I))
lib/Target/AArch64/AArch64FastISel.cpp
 2551   const IndirectBrInst *BI = cast<IndirectBrInst>(I);
 2551   const IndirectBrInst *BI = cast<IndirectBrInst>(I);
lib/Target/AArch64/AArch64PromoteConstant.cpp
  297   if (isa<const IndirectBrInst>(Instr))
lib/Target/ARM/ARMFastISel.cpp
 1343   const IndirectBrInst *IB = cast<IndirectBrInst>(I);
 1343   const IndirectBrInst *IB = cast<IndirectBrInst>(I);
lib/Target/PowerPC/PPCFastISel.cpp
 1865   const IndirectBrInst *IB = cast<IndirectBrInst>(I);
 1865   const IndirectBrInst *IB = cast<IndirectBrInst>(I);
lib/Target/PowerPC/PPCTargetTransformInfo.cpp
  459     } else if (isa<IndirectBrInst>(J) || isa<InvokeInst>(J)) {
lib/Transforms/IPO/HotColdSplitting.cpp
  100   return !(isa<ReturnInst>(I) || isa<IndirectBrInst>(I));
lib/Transforms/Instrumentation/PGOInstrumentation.cpp
 1297           isa<IndirectBrInst>(TI)))
 1326     if (isa<IndirectBrInst>((*PI)->getTerminator()))
lib/Transforms/Scalar/CallSiteSplitting.cpp
  198   if (Preds.size() != 2 || isa<IndirectBrInst>(Preds[0]->getTerminator()) ||
  199       isa<IndirectBrInst>(Preds[1]->getTerminator()))
lib/Transforms/Scalar/GVN.cpp
 1108       if (isa<IndirectBrInst>(Pred->getTerminator())) {
 2349     if (isa<IndirectBrInst>(PREPred->getTerminator()))
lib/Transforms/Scalar/JumpThreading.cpp
  495     if (isa<IndirectBrInst>(StopAt))
 1069   } else if (IndirectBrInst *IB = dyn_cast<IndirectBrInst>(Terminator)) {
 1069   } else if (IndirectBrInst *IB = dyn_cast<IndirectBrInst>(Terminator)) {
 1454       if (isa<IndirectBrInst>(P->getTerminator()) ||
 1664     if (isa<IndirectBrInst>(Pred->getTerminator()) ||
lib/Transforms/Scalar/LICM.cpp
 1484     if (isa<IndirectBrInst>(BBPred->getTerminator()))
lib/Transforms/Scalar/LoopStrengthReduce.cpp
 5319           !isa<IndirectBrInst>(BB->getTerminator()) &&
lib/Transforms/Scalar/SCCP.cpp
  717   if (auto *IBR = dyn_cast<IndirectBrInst>(&TI)) {
  717   if (auto *IBR = dyn_cast<IndirectBrInst>(&TI)) {
 1696    if (auto *IBR = dyn_cast<IndirectBrInst>(TI)) {
 1696    if (auto *IBR = dyn_cast<IndirectBrInst>(TI)) {
 1986   } else if (IndirectBrInst *IBR = dyn_cast<IndirectBrInst>(I)) {
 1986   } else if (IndirectBrInst *IBR = dyn_cast<IndirectBrInst>(I)) {
lib/Transforms/Scalar/SpeculateAroundPHIs.cpp
  781     if (isa<IndirectBrInst>(TermInst) ||
lib/Transforms/Utils/BasicBlockUtils.cpp
  394     if (TI->getNumSuccessors() > 1 && !isa<IndirectBrInst>(TI))
lib/Transforms/Utils/BreakCriticalEdges.cpp
  364     auto *IBI = dyn_cast<IndirectBrInst>(BB.getTerminator());
  364     auto *IBI = dyn_cast<IndirectBrInst>(BB.getTerminator());
lib/Transforms/Utils/Evaluator.cpp
  625       } else if (IndirectBrInst *IBI = dyn_cast<IndirectBrInst>(CurInst)) {
  625       } else if (IndirectBrInst *IBI = dyn_cast<IndirectBrInst>(CurInst)) {
lib/Transforms/Utils/Local.cpp
  301   if (auto *IBI = dyn_cast<IndirectBrInst>(T)) {
  301   if (auto *IBI = dyn_cast<IndirectBrInst>(T)) {
lib/Transforms/Utils/LoopUtils.cpp
   69         if (isa<IndirectBrInst>(PredBB->getTerminator()))
lib/Transforms/Utils/SimplifyCFG.cpp
  201   bool SimplifyIndirectBr(IndirectBrInst *IBI);
  688   } else if (IndirectBrInst *IBI = dyn_cast<IndirectBrInst>(TI)) {
  688   } else if (IndirectBrInst *IBI = dyn_cast<IndirectBrInst>(TI)) {
 2215     if (isa<IndirectBrInst>(PredBB->getTerminator()))
 3557 static bool SimplifyIndirectBrOnSelect(IndirectBrInst *IBI, SelectInst *SI) {
 5684 bool SimplifyCFGOpt::SimplifyIndirectBr(IndirectBrInst *IBI) {
 6107   } else if (auto *IBI = dyn_cast<IndirectBrInst>(BB->getTerminator())) {
 6107   } else if (auto *IBI = dyn_cast<IndirectBrInst>(BB->getTerminator())) {
tools/clang/lib/CodeGen/CodeGenFunction.h
 1221   llvm::IndirectBrInst *IndirectBranch = nullptr;
tools/llvm-diff/DifferenceEngine.cpp
  305     } else if (isa<IndirectBrInst>(L)) {
  306       IndirectBrInst *LI = cast<IndirectBrInst>(L);
  306       IndirectBrInst *LI = cast<IndirectBrInst>(L);
  307       IndirectBrInst *RI = cast<IndirectBrInst>(R);
  307       IndirectBrInst *RI = cast<IndirectBrInst>(R);
tools/llvm-reduce/deltas/ReduceBasicBlocks.cpp
   41   if (auto IndBI = dyn_cast<IndirectBrInst>(Term))
   56         IndirectBrInst::Create(Address, ChunkSucessors.size(), &BB);