Skip to content
  1. Sep 04, 2006
    • Chris Lattner's avatar
      Completely rearchitect the interface between targets and the pass manager. · 12e97307
      Chris Lattner authored
      This pass:
      
      1. Splits TargetMachine into TargetMachine (generic targets, can be implemented
      any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by
      things using libcodegen and other support).
      2. Instead of having each target fully populate the passmgr for file or JIT
         output, move all this to common code, and give targets hooks they can
         implement.
      3. Commonalize the target population stuff between file emission and JIT
         emission.
      4. All (native code) codegen stuff now happens in a FunctionPassManager, which
         paves the way for "fast -O0" stuff in the CFE later, and now LLC could
         lazily stream .bc files from disk to use less memory.
      5. There are now many fewer #includes and the targets don't depend on the
         scalar xforms or libanalysis anymore (but codegen does).
      6. Changing common code generator pass ordering stuff no longer requires
         touching all targets.
      7. The JIT now has the option of "-fast" codegen or normal optimized codegen,
         which is now orthogonal to the fact that JIT'ing is being done.
      
      llvm-svn: 30081
      12e97307
  2. Aug 29, 2006
  3. Jul 27, 2006
  4. Jul 25, 2006
  5. Mar 14, 2006
  6. Oct 16, 2005
  7. Oct 15, 2005
  8. Jul 30, 2005
  9. Apr 22, 2005
  10. Nov 23, 2004
  11. Nov 20, 2004
  12. Aug 11, 2004
  13. Jul 16, 2004
  14. Jun 21, 2004
  15. Jan 23, 2004
  16. Dec 28, 2003
  17. Dec 20, 2003
Loading