Skip to content
  1. Jul 12, 2011
    • Andrew Trick's avatar
      indvars: Code reorganization in preparation for · cdc2297e
      Andrew Trick authored
      LinearFunctionTestReplace rewrite. No functionality.
      
      I've been wanting to group the indvar subphases into sections and
      order them by their logical sequence. My next checkin adds functions
      related to LFTR, and doing the reorg now should help reviewers. Since,
      most of the code in IndVarSimplify.cpp has recently been replaced or
      will be replaced soon, obscuring blame should not be an issue. This
      seems like an ideal time to shuffle the code around.
      
      I'm happy to take more suggestions for cleaning up the code. Or if
      you've been wanting to cleanup anything in this file yourself, now is
      a good time.
      
      llvm-svn: 134941
      cdc2297e
  2. Jul 11, 2011
  3. Jul 09, 2011
  4. Jul 08, 2011
  5. Jul 07, 2011
  6. Jul 06, 2011
  7. Jul 05, 2011
  8. Jul 02, 2011
  9. Jul 01, 2011
  10. Jun 30, 2011
  11. Jun 29, 2011
  12. Jun 28, 2011
  13. Jun 27, 2011
  14. Jun 23, 2011
  15. Jun 22, 2011
  16. Jun 21, 2011
  17. Jun 20, 2011
    • Jay Foad's avatar
      Change how PHINodes store their operands. · e03c05c3
      Jay Foad authored
      Change PHINodes to store simple pointers to their incoming basic blocks,
      instead of full-blown Uses.
      
      Note that this loses an optimization in SplitCriticalEdge(), because we
      can no longer walk the use list of a BasicBlock to find phi nodes. See
      the comment I removed starting "However, the foreach loop is slow for
      blocks with lots of predecessors".
      
      Extend replaceAllUsesWith() on a BasicBlock to also update any phi
      nodes in the block's successors. This mimics what would have happened
      when PHINodes were proper Users of their incoming blocks. (Note that
      this only works if OldBB->replaceAllUsesWith(NewBB) is called when
      OldBB still has a terminator instruction, so it still has some
      successors.)
      
      llvm-svn: 133435
      e03c05c3
    • Jay Foad's avatar
      Make better use of the PHINode API. · 372ad64b
      Jay Foad authored
      Change various bits of code to make better use of the existing PHINode
      API, to insulate them from forthcoming changes in how PHINodes store
      their operands.
      
      llvm-svn: 133434
      372ad64b
  18. Jun 18, 2011
    • Cameron Zwarich's avatar
      When scalar replacement returns a vector type, only accept it if the vector · 9601ddb2
      Cameron Zwarich authored
      type's bitwidth matches the (allocated) size of the alloca. This severely
      pessimizes vector scalar replacement when the only vector type being used is
      something like <3 x float> on x86 or ARM whose allocated size matches a
      <4 x float>.
      
      I hope to fix some of the flawed assumptions about allocated size throughout
      scalar replacement and reenable this in most cases.
      
      llvm-svn: 133338
      9601ddb2
Loading