From fea483d7c027c595101dce825bdf3f512bf9aaca Mon Sep 17 00:00:00 2001 From: Brian Gaeke Date: Fri, 7 Nov 2003 20:04:22 +0000 Subject: visitCallInst --> visitCallSite. Use visitCallSite to implement both CallInsts and InvokeInsts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9788 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/ExecutionEngine/Interpreter/Execution.cpp | 4 ++-- lib/ExecutionEngine/Interpreter/Interpreter.h | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'lib/ExecutionEngine') diff --git a/lib/ExecutionEngine/Interpreter/Execution.cpp b/lib/ExecutionEngine/Interpreter/Execution.cpp index 6eb0324..e04f564 100644 --- a/lib/ExecutionEngine/Interpreter/Execution.cpp +++ b/lib/ExecutionEngine/Interpreter/Execution.cpp @@ -637,9 +637,9 @@ void Interpreter::visitStoreInst(StoreInst &I) { // Miscellaneous Instruction Implementations //===----------------------------------------------------------------------===// -void Interpreter::visitCallInst(CallInst &I) { +void Interpreter::visitCallSite(CallSite CS) { ExecutionContext &SF = ECStack.back(); - SF.Caller = CallSite(&I); + SF.Caller = CS; std::vector ArgVals; const unsigned NumArgs = SF.Caller.arg_size(); ArgVals.reserve(NumArgs); diff --git a/lib/ExecutionEngine/Interpreter/Interpreter.h b/lib/ExecutionEngine/Interpreter/Interpreter.h index 06e8257..974aea8 100644 --- a/lib/ExecutionEngine/Interpreter/Interpreter.h +++ b/lib/ExecutionEngine/Interpreter/Interpreter.h @@ -119,10 +119,13 @@ public: void visitLoadInst(LoadInst &I); void visitStoreInst(StoreInst &I); void visitGetElementPtrInst(GetElementPtrInst &I); - void visitPHINode(PHINode &PN) { assert(0 && "PHI nodes already handled!"); } void visitCastInst(CastInst &I); - void visitCallInst(CallInst &I); + + void visitCallSite(CallSite CS); + void visitCallInst(CallInst &I) { visitCallSite (CallSite (&I)); } + void visitInvokeInst(InvokeInst &I) { visitCallSite (CallSite (&I)); } + void visitShl(ShiftInst &I); void visitShr(ShiftInst &I); void visitVANextInst(VANextInst &I); -- cgit v1.1