aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm-project/llvm/include/llvm/IR/Instructions.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm-project/llvm/include/llvm/IR/Instructions.h')
-rw-r--r--contrib/llvm-project/llvm/include/llvm/IR/Instructions.h7
1 files changed, 3 insertions, 4 deletions
diff --git a/contrib/llvm-project/llvm/include/llvm/IR/Instructions.h b/contrib/llvm-project/llvm/include/llvm/IR/Instructions.h
index a14bc39cea65..083fed5de4a3 100644
--- a/contrib/llvm-project/llvm/include/llvm/IR/Instructions.h
+++ b/contrib/llvm-project/llvm/include/llvm/IR/Instructions.h
@@ -44,6 +44,7 @@ namespace llvm {
class APFloat;
class APInt;
class BasicBlock;
+class BlockAddress;
class ConstantInt;
class DataLayout;
class StringRef;
@@ -4004,9 +4005,6 @@ class CallBrInst : public CallBase {
ArrayRef<BasicBlock *> IndirectDests, ArrayRef<Value *> Args,
ArrayRef<OperandBundleDef> Bundles, const Twine &NameStr);
- /// Should the Indirect Destinations change, scan + update the Arg list.
- void updateArgBlockAddresses(unsigned i, BasicBlock *B);
-
/// Compute the number of operands to allocate.
static int ComputeNumOperands(int NumArgs, int NumIndirectDests,
int NumBundleInputs = 0) {
@@ -4154,7 +4152,6 @@ public:
*(&Op<-1>() - getNumIndirectDests() - 1) = reinterpret_cast<Value *>(B);
}
void setIndirectDest(unsigned i, BasicBlock *B) {
- updateArgBlockAddresses(i, B);
*(&Op<-1>() - getNumIndirectDests() + i) = reinterpret_cast<Value *>(B);
}
@@ -4172,6 +4169,8 @@ public:
unsigned getNumSuccessors() const { return getNumIndirectDests() + 1; }
+ BlockAddress *getBlockAddressForIndirectDest(unsigned DestNo) const;
+
// Methods for support type inquiry through isa, cast, and dyn_cast:
static bool classof(const Instruction *I) {
return (I->getOpcode() == Instruction::CallBr);