[llvm-commits] CVS: llvm/include/llvm/Reoptimizer/BinInterface/LLVMTrace.h
Anand Shukla
ashukla at cs.uiuc.edu
Sat May 31 21:32:01 PDT 2003
Changes in directory llvm/include/llvm/Reoptimizer/BinInterface:
LLVMTrace.h updated: 1.1 -> 1.2
---
Log message:
Simple additions to the runtime API
---
Diffs of the changes:
Index: llvm/include/llvm/Reoptimizer/BinInterface/LLVMTrace.h
diff -u llvm/include/llvm/Reoptimizer/BinInterface/LLVMTrace.h:1.1 llvm/include/llvm/Reoptimizer/BinInterface/LLVMTrace.h:1.2
--- llvm/include/llvm/Reoptimizer/BinInterface/LLVMTrace.h:1.1 Sat May 31 17:16:35 2003
+++ llvm/include/llvm/Reoptimizer/BinInterface/LLVMTrace.h Sat May 31 21:31:48 2003
@@ -43,6 +43,30 @@
void getAllCids(Instruction *I, std::vector<unsigned int> &vec);
//get section id for the instruction
+ //This information is to aid in moving instructions to
+ //proper epilogs during optimizations
+ //
+ //section id refers to the next immediate epilog to which
+ //the dataflow would be exiting
+ // E.G
+ //
+ // | Instr 1 |
+ // | Instr 2 |
+ // | Instr 3 |
+ // | Branch to epilog 2|
+ // | Delay slot 1 |
+ // | Instr 4 |
+ // | Instr 5 |
+ // | Instr 6 |
+ // | Branch to top |
+ // | Delay slot 2 |
+ //
+ // Here, the section for Instr1, Instr2 and Instr2 is 2
+ //
+ // Also, note that the next branch after Instr 4, Instr5, and Instr 6
+ // goes back to the top of the section trace
+ // So these instructions CANNOT be moved into any epilog
+ // The section id for instructions 4, 5 and 6 is 0.
unsigned int getSec(Instruction *I);
//get ALL section ids for the instruction, including the
More information about the llvm-commits
mailing list