[llvm-commits] [llvm] r48671 - /llvm/branches/ggreif/README

Gabor Greif ggreif at gmail.com
Fri Mar 21 17:47:46 PDT 2008


Author: ggreif
Date: Fri Mar 21 19:47:46 2008
New Revision: 48671

URL: http://llvm.org/viewvc/llvm-project?rev=48671&view=rev
Log:
flesh out the roadmap for project2

Modified:
    llvm/branches/ggreif/README

Modified: llvm/branches/ggreif/README
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/ggreif/README?rev=48671&r1=48670&r2=48671&view=diff

==============================================================================
--- llvm/branches/ggreif/README (original)
+++ llvm/branches/ggreif/README Fri Mar 21 19:47:46 2008
@@ -4,6 +4,7 @@
 
 Questions? <mailto:ggreif at gmail.com>
 
+--------------------------------------------------------------------------------
 1) Parallel "make check".
 Modelled after the successful clang "make test -jX" experiment, I am
 now bold enough to sink my teeth into the LLVM test suite.
@@ -20,10 +21,36 @@
   svn switch http(s)://llvm.org/svn/llvm-project/llvm/branches/ggreif/parallelized-test/lib/llvm.exp lib/llvm.exp
 
 
+--------------------------------------------------------------------------------
 2) <class Use> size reduction.
 After some conversation with Chris I think we are ready for a
 16 -> 12 byte size reduction of the Use class. There are some
-collateral improvements too. This project is in its conceptual phase.
+collateral improvements too. This project is in its very early
+implementation phase.
+
+SYNOPSIS:
+There will be six waves until this project can be closed. A
+wave is defined as a point in the implementation that is consistent,
+correct and mergable to trunk. Each wave ends with a code review
+and the necessary rework (which may require a new review, etc.).
+Whether a merge actually takes place will be decided on a
+case-by-case basis.
+
+WAVE1: Finalize the design, document it, adapt memory allocation for Users.
+       Caveats: 'operator new' and 'operator delete' must match.
+
+WAVE2: Remove Use objects that are embedded in Users. 'operator new' now
+       performs real work. Create wrappers to destructor and 'operator delete'
+       that do the right thing (where needed).
+
+WAVE3: Flip indexing order of Uses. This involves changing the iterators.
+
+WAVE4: Remove User* from Use, introducing surrogate getters. Embedded and
+       out-of-object representations being considered.
+
+WAVE5: Stylistic and performance tweaks. Valgrind testing.
+
+WAVE6: Measurements, finishing touches.
 
 BRANCH NAME: use-diet
 USAGE:





More information about the llvm-commits mailing list