[llvm-commits] CVS: llvm/lib/Reoptimizer/TraceCache/TraceCache.cpp

Anand Shukla ashukla at cs.uiuc.edu
Fri Jul 18 11:12:33 PDT 2003


Changes in directory llvm/lib/Reoptimizer/TraceCache:

TraceCache.cpp updated: 1.14 -> 1.15

---
Log message:

Major revision for runtime tracing framework

---
Diffs of the changes:

Index: llvm/lib/Reoptimizer/TraceCache/TraceCache.cpp
diff -u llvm/lib/Reoptimizer/TraceCache/TraceCache.cpp:1.14 llvm/lib/Reoptimizer/TraceCache/TraceCache.cpp:1.15
--- llvm/lib/Reoptimizer/TraceCache/TraceCache.cpp:1.14	Thu Jul 10 13:57:39 2003
+++ llvm/lib/Reoptimizer/TraceCache/TraceCache.cpp	Fri Jul 18 11:11:03 2003
@@ -1,19 +1,10 @@
 //===-- ------------llvm/Reoptimizer/TraceCache.cpp---------------*- C++ -*--=//
 // Implements TraceCache
 // 
-//TraceCache algorithm:
 //When a trace with starting address "orAddr" in the original code 
 //is added to the traceCache at an address "trAddr":
-//     -change all branch addresses in the original code that point to orAddr
-//      to trAddr
-//     -change all branches WITHIN the trace that point to orAddr to point to
-//      trAddr
-//     -for all outgoing addresses in the trace being added, 
-//         if a trace associated with outgoing address exists in the trace 
-//         cache, change the outgoing address to the tracecache
 //
-//When a trace is removed from tracecache
-//    -reset any branches that pointe to tracecache, to the original address
+//
 //
 //===----------------------------------------------------------------------===//
 
@@ -537,10 +528,21 @@
 #ifdef GET_TRACE_TIME
   doFlush(instAddr+8, instAddr+12);
 #endif
+
+  ///remove
+  ///Overhead time
+  /*
+  tr->patchTrace(firstLevelTraceStartAddr);
+  vm->writeBranchInstruction(firstLevelTraceStartAddr, instAddr);
+  doFlush(firstLevelTraceStartAddr, firstLevelTraceStartAddr+8);
+  doFlush(instAddr, instAddr+8);
+  */
+  //--end remove
   
   //now write branch in the level 1 tracecache
+  
   vm->writeBranchInstruction(firstLevelTraceStartAddr, traceStartAddr);
-  doFlush(firstLevelTraceStartAddr+4, firstLevelTraceStartAddr+20);
+  doFlush(firstLevelTraceStartAddr, firstLevelTraceStartAddr+20);
   
   return true;
 }





More information about the llvm-commits mailing list