Skip to content
  1. Oct 29, 2010
  2. Oct 19, 2010
    • Owen Anderson's avatar
      Get rid of static constructors for pass registration. Instead, every pass... · 6c18d1aa
      Owen Anderson authored
      Get rid of static constructors for pass registration.  Instead, every pass exposes an initializeMyPassFunction(), which
      must be called in the pass's constructor.  This function uses static dependency declarations to recursively initialize
      the pass's dependencies.
      
      Clients that only create passes through the createFooPass() APIs will require no changes.  Clients that want to use the
      CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
      before parsing commandline arguments.
      
      I have tested this with all standard configurations of clang and llvm-gcc on Darwin.  It is possible that there are problems
      with the static dependencies that will only be visible with non-standard options.  If you encounter any crash in pass
      registration/creation, please send the testcase to me directly.
      
      llvm-svn: 116820
      6c18d1aa
  3. Oct 08, 2010
  4. Sep 30, 2010
  5. Sep 27, 2010
  6. Sep 23, 2010
  7. Sep 22, 2010
  8. Sep 21, 2010
  9. Sep 16, 2010
  10. Sep 13, 2010
  11. Aug 26, 2010
  12. Aug 17, 2010
  13. Aug 06, 2010
  14. Jul 22, 2010
  15. Jul 16, 2010
  16. Jun 30, 2010
  17. Jun 25, 2010
  18. Jun 24, 2010
  19. Apr 17, 2010
  20. Apr 16, 2010
  21. Mar 31, 2010
    • Dale Johannesen's avatar
      Fix a nasty dangling-pointer heisenbug that could · b67a6e66
      Dale Johannesen authored
      generate wrong code pretty much anywhere AFAICT.
      A case that hits the bug reproducibly is impossible,
      but the situation was like this:
      Addr = ...
      Store -> Addr
      Addr2 = GEP , 0, 0
      Store -> Addr2
      Handling the first store, the code changed replaced Addr
      with a sunkaddr and deleted Addr, but not its table
      entry.  Code in OptimizedBlock replaced Addr2 with a
      bitcast; if that happened to reuse the memory of Addr,
      the old table entry was erroneously found when handling
      the second store.
      
      llvm-svn: 100044
      b67a6e66
  22. Mar 26, 2010
  23. Mar 12, 2010
  24. Mar 11, 2010
  25. Feb 16, 2010
  26. Feb 13, 2010
  27. Feb 05, 2010
  28. Jan 19, 2010
    • Dan Gohman's avatar
      When doing address-mode sinking, expand the base register first, rather · ca19445d
      Dan Gohman authored
      than the scaled register. This makes it more likely that subsequent
      AddrModeMatcher queries will match the new address the same way as the
      old, instead of accidentally matching what had been the base register
      as the new scaled register, and then failing to match the scaled register.
      This fixes some problems with address-mode sinking multiple muls into a
      block, which will be a lot more common with some upcoming
      LoopStrengthReduction changes.
      
      llvm-svn: 93935
      ca19445d
  29. Jan 05, 2010
  30. Dec 17, 2009
Loading