diff options
Diffstat (limited to 'lib/ExecutionEngine/Interpreter')
-rw-r--r-- | lib/ExecutionEngine/Interpreter/Execution.cpp | 10 | ||||
-rw-r--r-- | lib/ExecutionEngine/Interpreter/Interpreter.h | 1 |
2 files changed, 7 insertions, 4 deletions
diff --git a/lib/ExecutionEngine/Interpreter/Execution.cpp b/lib/ExecutionEngine/Interpreter/Execution.cpp index 0fad82964d..9f6317fd39 100644 --- a/lib/ExecutionEngine/Interpreter/Execution.cpp +++ b/lib/ExecutionEngine/Interpreter/Execution.cpp @@ -1034,10 +1034,12 @@ MethodInfo::MethodInfo(Method *M) : Annotation(MethodInfoAID) { // Iterate over all of the instructions... unsigned InstNum = 0; - for (Method::inst_iterator MI = M->inst_begin(), ME = M->inst_end(); - MI != ME; ++MI) { - Instruction *I = *MI; // For each instruction... - I->addAnnotation(new InstNumber(++InstNum, getValueSlot(I))); // Add Annote + for (Method::iterator MI = M->begin(), ME = M->end(); MI != ME; ++MI) { + BasicBlock *BB = *MI; + for (BasicBlock::iterator II = BB->begin(), IE = BB->end(); II != IE; ++II){ + Instruction *I = *II; // For each instruction... Add Annote + I->addAnnotation(new InstNumber(++InstNum, getValueSlot(I))); + } } } diff --git a/lib/ExecutionEngine/Interpreter/Interpreter.h b/lib/ExecutionEngine/Interpreter/Interpreter.h index ffe1001597..050b7d332d 100644 --- a/lib/ExecutionEngine/Interpreter/Interpreter.h +++ b/lib/ExecutionEngine/Interpreter/Interpreter.h @@ -13,6 +13,7 @@ #include "llvm/Module.h" #include "llvm/Method.h" +#include "llvm/BasicBlock.h" #include "Support/DataTypes.h" #include "llvm/Assembly/CachedWriter.h" |