Skip to content
  1. Jul 21, 2011
  2. Jul 19, 2011
  3. Jul 18, 2011
  4. May 21, 2011
  5. Apr 15, 2011
  6. Jan 21, 2011
  7. Jan 16, 2011
  8. Nov 30, 2010
  9. 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
  10. Oct 08, 2010
  11. Aug 18, 2010
  12. Aug 13, 2010
  13. Aug 06, 2010
  14. Jul 29, 2010
  15. Jul 22, 2010
  16. Apr 26, 2010
  17. Apr 09, 2010
  18. Apr 06, 2010
    • Chris Lattner's avatar
      fix a really nasty bug that Evan was tracking in SCCP. When resolving · adca6082
      Chris Lattner authored
      undefs in branches/switches, we have two cases: a branch on a literal
      undef or a branch on a symbolic value which is undef.  If we have a
      literal undef, the code was correct: forcing it to a constant is the
      right thing to do.
      
      If we have a branch on a symbolic value that is undef, we should force
      the symbolic value to a constant, which then makes the successor block
      live.  Forcing the condition of the branch to being a constant isn't 
      safe if later paths become live and the value becomes overdefined.  This
      is the case that 'forcedconstant' is designed to handle, so just use it.
      
      This fixes rdar://7765019 but there is no good testcase for this, the
      one I have is too insane to be useful in the future.
      
      llvm-svn: 100478
      adca6082
  19. Apr 01, 2010
  20. Mar 26, 2010
  21. Mar 24, 2010
  22. Feb 27, 2010
  23. Feb 16, 2010
  24. Jan 05, 2010
  25. Nov 23, 2009
  26. Nov 20, 2009
  27. Nov 10, 2009
  28. Nov 05, 2009
  29. Nov 04, 2009
  30. Nov 03, 2009
Loading