[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