aboutsummaryrefslogtreecommitdiff
path: root/llvm/include/llvm/IR/InstVisitor.h
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/include/llvm/IR/InstVisitor.h')
-rw-r--r--llvm/include/llvm/IR/InstVisitor.h26
1 files changed, 3 insertions, 23 deletions
diff --git a/llvm/include/llvm/IR/InstVisitor.h b/llvm/include/llvm/IR/InstVisitor.h
index 6168c877a2be..4dbdc66d1366 100644
--- a/llvm/include/llvm/IR/InstVisitor.h
+++ b/llvm/include/llvm/IR/InstVisitor.h
@@ -10,7 +10,6 @@
#ifndef LLVM_IR_INSTVISITOR_H
#define LLVM_IR_INSTVISITOR_H
-#include "llvm/IR/CallSite.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
@@ -217,18 +216,9 @@ public:
RetTy visitVAEndInst(VAEndInst &I) { DELEGATE(IntrinsicInst); }
RetTy visitVACopyInst(VACopyInst &I) { DELEGATE(IntrinsicInst); }
RetTy visitIntrinsicInst(IntrinsicInst &I) { DELEGATE(CallInst); }
-
- // Call, Invoke and CallBr are slightly different as they delegate first
- // through a generic CallSite visitor.
- RetTy visitCallInst(CallInst &I) {
- return static_cast<SubClass*>(this)->visitCallSite(&I);
- }
- RetTy visitInvokeInst(InvokeInst &I) {
- return static_cast<SubClass*>(this)->visitCallSite(&I);
- }
- RetTy visitCallBrInst(CallBrInst &I) {
- return static_cast<SubClass *>(this)->visitCallSite(&I);
- }
+ RetTy visitCallInst(CallInst &I) { DELEGATE(CallBase); }
+ RetTy visitInvokeInst(InvokeInst &I) { DELEGATE(CallBase); }
+ RetTy visitCallBrInst(CallBrInst &I) { DELEGATE(CallBase); }
// While terminators don't have a distinct type modeling them, we support
// intercepting them with dedicated a visitor callback.
@@ -280,16 +270,6 @@ public:
DELEGATE(Instruction);
}
- // Provide a legacy visitor for a 'callsite' that visits calls, invokes,
- // and calbrs.
- //
- // Prefer overriding the type system based `CallBase` instead.
- RetTy visitCallSite(CallSite CS) {
- assert(CS);
- Instruction &I = *CS.getInstruction();
- DELEGATE(CallBase);
- }
-
// If the user wants a 'default' case, they can choose to override this
// function. If this function is not overloaded in the user's subclass, then
// this instruction just gets ignored.