Skip to content
  1. Nov 06, 2008
  2. Nov 05, 2008
    • Evan Cheng's avatar
      Restructure ARM code emitter to use instruction formats instead of addressing... · 81889d01
      Evan Cheng authored
      Restructure ARM code emitter to use instruction formats instead of addressing modes to determine how to encode instructions.
      
      llvm-svn: 58764
      81889d01
    • Dan Gohman's avatar
      Eliminate the ISel priority queue, which used the topological order for a · f14b77eb
      Dan Gohman authored
      priority function. Instead, just iterate over the AllNodes list, which is
      already in topological order. This eliminates a fair amount of bookkeeping,
      and speeds up the isel phase by about 15% on many testcases.
      
      The impact on most targets is that AddToISelQueue calls can be simply removed.
      
      In the x86 target, there are two additional notable changes.
      
      The rule-bending AND+SHIFT optimization in MatchAddress that creates new
      pre-isel nodes during isel is now a little more verbose, but more robust.
      Instead of either creating an invalid DAG or creating an invalid topological
      sort, as it has historically done, it can now just insert the new nodes into
      the node list at a position where they will be consistent with the topological
      ordering.
      
      Also, the address-matching code has logic that checked to see if a node was
      "already selected". However, when a node is selected, it has all its uses
      taken away via ReplaceAllUsesWith or equivalent, so it won't recieve any
      further visits from MatchAddress. This code is now removed.
      
      llvm-svn: 58748
      f14b77eb
  3. Nov 04, 2008
  4. Nov 03, 2008
  5. Oct 31, 2008
  6. Oct 30, 2008
  7. Oct 28, 2008
    • Jim Grosbach's avatar
      Support for constant islands in the ARM JIT. · ff2b4948
      Jim Grosbach authored
      Since the ARM constant pool handling supercedes the standard LLVM constant
      pool entirely, the JIT emitter does not allocate space for the constants,
      nor initialize the memory. The constant pool is considered part of the 
      instruction stream.
      
      Likewise, when resolving relocations into the constant pool, a hook into
      the target back end is used to resolve from the constant ID# to the
      address where the constant is stored.
      
      For now, the support in the ARM emitter is limited to 32-bit integer. Future
      patches will expand this to the full range of constants necessary.
      
      llvm-svn: 58338
      ff2b4948
  8. Oct 27, 2008
    • David Greene's avatar
      · ce2a9381
      David Greene authored
      Have TableGen emit setSubgraphColor calls under control of a -gen-debug
      flag.  Then in a debugger developers can set breakpoints at these calls
      to see waht is about to be selected and what the resulting subgraph
      looks like.  This really helps when debugging instruction selection.
      
      llvm-svn: 58278
      ce2a9381
  9. Oct 25, 2008
  10. Oct 23, 2008
  11. Oct 22, 2008
  12. Oct 21, 2008
  13. Oct 20, 2008
  14. Oct 16, 2008
  15. Oct 14, 2008
  16. Oct 12, 2008
Loading