Remove support for breakpoints (not used).

Remove some dead code and whitespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8346 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Brian Gaeke 2003-09-04 23:15:40 +00:00
parent 8e53948881
commit 9ad671d540
3 changed files with 8 additions and 47 deletions

View File

@ -1019,10 +1019,9 @@ void Interpreter::callFunction(Function *F,
StackFrame.VarArgs.assign(ArgVals.begin()+i, ArgVals.end());
}
// executeInstruction - Interpret a single instruction, increment the "PC", and
// return true if the next instruction is a breakpoint...
// executeInstruction - Interpret a single instruction & increment the "PC".
//
bool Interpreter::executeInstruction() {
void Interpreter::executeInstruction() {
assert(!ECStack.empty() && "No program running, cannot execute inst!");
ExecutionContext &SF = ECStack.back(); // Current stack frame
@ -1037,11 +1036,8 @@ bool Interpreter::executeInstruction() {
// instruction execution...
//
if (int SigNo = sigsetjmp(SignalRecoverBuffer, 1)) {
--SF.CurInst; // Back up to erroring instruction
std::cout << "EXCEPTION OCCURRED [" << strsignal(SigNo) << "]\n";
exit(1);
InInstruction = false;
return true;
}
InInstruction = true;
@ -1050,11 +1046,6 @@ bool Interpreter::executeInstruction() {
// Reset the current frame location to the top of stack
CurFrame = ECStack.size()-1;
if (CurFrame == -1) return false; // No breakpoint if no code
// Return true if there is a breakpoint annotation on the instruction...
return ECStack[CurFrame].CurInst->getAnnotation(BreakpointAID) != 0;
}
void Interpreter::stepInstruction() { // Do the 'step' command
@ -1082,12 +1073,7 @@ void Interpreter::nextInstruction() { // Do the 'next' command
if (ECStack.back().CurInst->getOpcode() == Instruction::Call) {
unsigned StackSize = ECStack.size();
// Step into the function...
if (executeInstruction()) {
// Hit a breakpoint, print current instruction, then return to user...
std::cout << "Breakpoint hit!\n";
printCurrentInstruction();
return;
}
executeInstruction();
// If we we able to step into the function, finish it now. We might not be
// able the step into a function, if it's external for example.
@ -1108,15 +1094,11 @@ void Interpreter::run() {
return;
}
bool HitBreakpoint = false;
while (!ECStack.empty() && !HitBreakpoint) {
while (!ECStack.empty()) {
// Run an instruction...
HitBreakpoint = executeInstruction();
executeInstruction();
}
if (HitBreakpoint)
std::cout << "Breakpoint hit!\n";
// Print the next instruction to execute...
printCurrentInstruction();
}
@ -1128,21 +1110,15 @@ void Interpreter::finish() {
}
unsigned StackSize = ECStack.size();
bool HitBreakpoint = false;
while (ECStack.size() >= StackSize && !HitBreakpoint) {
while (ECStack.size() >= StackSize) {
// Run an instruction...
HitBreakpoint = executeInstruction();
executeInstruction();
}
if (HitBreakpoint)
std::cout << "Breakpoint hit!\n";
// Print the next instruction to execute...
printCurrentInstruction();
}
// printCurrentInstruction - Print out the instruction that the virtual PC is
// at, or fail silently if no program is running.
//

View File

@ -37,7 +37,6 @@ private:
unsigned getValueSlot(const Value *V);
};
//===----------------------------------------------------------------------===//
// Support for the SlotNumber annotation
//===----------------------------------------------------------------------===//
@ -58,9 +57,6 @@ struct SlotNumber : public Annotation {
SlotNum(sn) {}
};
//===----------------------------------------------------------------------===//
// Support for the InstNumber annotation
//===----------------------------------------------------------------------===//
@ -79,14 +75,4 @@ struct InstNumber : public SlotNumber {
InstNumber(unsigned in, unsigned sn) : SlotNumber(sn), InstNum(in) {}
};
//===----------------------------------------------------------------------===//
// Support for the Breakpoint annotation
//===----------------------------------------------------------------------===//
static AnnotationID BreakpointAID(
AnnotationManager::getID("Interpreter::Breakpoint"));
// Just use an Annotation directly, Breakpoint is currently just a marker
#endif

View File

@ -111,7 +111,6 @@ public:
// User Interation Methods...
bool callFunction(const std::string &Name); // return true on failure
void setBreakpoint(const std::string &Name);
void infoValue(const std::string &Name);
void print(const std::string &Name);
static void print(const Type *Ty, GenericValue V);
@ -125,7 +124,7 @@ public:
// Code execution methods...
void callFunction(Function *F, const std::vector<GenericValue> &ArgVals);
bool executeInstruction(); // Execute one instruction...
void executeInstruction(); // Execute one instruction...
void stepInstruction(); // Do the 'step' command
void nextInstruction(); // Do the 'next' command