Skip to content
  1. Oct 12, 2010
  2. Oct 08, 2010
  3. Sep 02, 2010
    • Duncan Sands's avatar
      Reapply commit 112699, speculatively reverted by echristo, since · 6778149f
      Duncan Sands authored
      I'm sure it is harmless.  Original commit message:
      If PrototypeValue is erased in the middle of using the SSAUpdator
      then the SSAUpdator may access freed memory.  Instead, simply pass
      in the type and name explicitly, which is all that was used anyway.
      
      llvm-svn: 112810
      6778149f
  4. Sep 01, 2010
  5. Aug 23, 2010
  6. Aug 06, 2010
  7. Jul 26, 2010
    • Dan Gohman's avatar
      Remove LCSSA's bogus dependence on LoopSimplify and LoopSimplify's bogus · 0141c13b
      Dan Gohman authored
      dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier
      pass in StandardPasses.h to ensure that it gets scheduled at the right
      time.
      
      Declare that loop unrolling preserves ScalarEvolution, and shuffle some
      getAnalysisUsages.
      
      This eliminates one LoopSimplify and one LCCSA run in the standard
      compile opts sequence.
      
      llvm-svn: 109413
      0141c13b
  8. Jul 16, 2010
  9. Jul 09, 2010
  10. Mar 10, 2010
  11. Nov 09, 2009
  12. Nov 05, 2009
  13. Oct 11, 2009
  14. Oct 10, 2009
  15. Sep 28, 2009
  16. Sep 08, 2009
    • Dan Gohman's avatar
      Re-apply r80926, with fixes: keep the domtree informed of new blocks · 3ddbc242
      Dan Gohman authored
      that get created during loop unswitching, and fix SplitBlockPredecessors'
      LCSSA updating code to create new PHIs instead of trying to just move
      existing ones.
      
      Also, optimize Loop::verifyLoop, since it gets called a lot. Use
      searches on a sorted list of blocks instead of calling the "contains"
      function, as is done in other places in the Loop class, since "contains"
      does a linear search. Also, don't call verifyLoop from LoopSimplify or
      LCSSA, as the PassManager is already calling verifyLoop as part of
      LoopInfo's verifyAnalysis.
      
      llvm-svn: 81221
      3ddbc242
  17. Sep 06, 2009
  18. Sep 03, 2009
  19. Jul 31, 2009
  20. Jul 22, 2009
  21. Jul 06, 2009
  22. Jun 26, 2009
  23. Apr 22, 2009
  24. Jan 23, 2009
    • Gabor Greif's avatar
      Simplify the logic of getting hold of a PHI predecessor block. · eb61fcf2
      Gabor Greif authored
      There is now a direct way from value-use-iterator to incoming block in PHINode's API.
      This way we avoid the iterator->index->iterator trip, and especially the costly
      getOperandNo() invocation. Additionally there is now an assertion that the iterator
      really refers to one of the PHI's Uses.
      
      llvm-svn: 62869
      eb61fcf2
  25. Oct 23, 2008
    • Daniel Dunbar's avatar
      Change create*Pass factory functions to return Pass* instead of · 7f39e2d8
      Daniel Dunbar authored
      LoopPass*.
       - Although less precise, this means they can be used in clients
         without RTTI (who would otherwise need to include LoopPass.h, which
         eventually includes things using dynamic_cast). This was the
         simplest solution that presented itself, but I am happy to use a
         better one if available.
      
      llvm-svn: 58010
      7f39e2d8
  26. Sep 04, 2008
  27. Jul 23, 2008
    • Dan Gohman's avatar
      Enable first-class aggregates support. · fa1211f6
      Dan Gohman authored
      Remove the GetResultInst instruction. It is still accepted in LLVM assembly
      and bitcode, where it is now auto-upgraded to ExtractValueInst. Also, remove
      support for return instructions with multiple values. These are auto-upgraded
      to use InsertValueInst instructions.
      
      The IRBuilder still accepts multiple-value returns, and auto-upgrades them
      to InsertValueInst instructions.
      
      llvm-svn: 53941
      fa1211f6
  28. Jun 03, 2008
  29. May 30, 2008
  30. May 26, 2008
  31. May 23, 2008
  32. May 15, 2008
  33. May 13, 2008
Loading