From d5d95b0b510a1cf6b4b72b444649178113bd05bd Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Mon, 6 Feb 2012 21:16:41 +0000 Subject: [unwind removal] We no longer have 'unwind' instructions being generated, so remove the code that handles them. llvm-svn: 149901 --- llvm/lib/ExecutionEngine/Interpreter/Execution.cpp | 18 ------------------ 1 file changed, 18 deletions(-) (limited to 'llvm/lib/ExecutionEngine/Interpreter/Execution.cpp') diff --git a/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp b/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp index 1af40dd..ac4c49f 100644 --- a/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp +++ b/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp @@ -625,24 +625,6 @@ void Interpreter::visitReturnInst(ReturnInst &I) { popStackAndReturnValueToCaller(RetTy, Result); } -void Interpreter::visitUnwindInst(UnwindInst &I) { - // Unwind stack - Instruction *Inst; - do { - ECStack.pop_back(); - if (ECStack.empty()) - report_fatal_error("Empty stack during unwind!"); - Inst = ECStack.back().Caller.getInstruction(); - } while (!(Inst && isa(Inst))); - - // Return from invoke - ExecutionContext &InvokingSF = ECStack.back(); - InvokingSF.Caller = CallSite(); - - // Go to exceptional destination BB of invoke instruction - SwitchToNewBasicBlock(cast(Inst)->getUnwindDest(), InvokingSF); -} - void Interpreter::visitUnreachableInst(UnreachableInst &I) { report_fatal_error("Program executed an 'unreachable' instruction!"); } -- cgit v1.1