Skip to content
  1. Feb 01, 2012
    • Hal Finkel's avatar
      Add a basic-block autovectorization pass. · c34e5113
      Hal Finkel authored
      This is the initial checkin of the basic-block autovectorization pass along with some supporting vectorization infrastructure.
      Special thanks to everyone who helped review this code over the last several months (especially Tobias Grosser).
      
      llvm-svn: 149468
      c34e5113
  2. Jan 27, 2012
  3. Jan 26, 2012
  4. Jan 25, 2012
  5. Jan 20, 2012
  6. Jan 17, 2012
  7. Jan 11, 2012
  8. Jan 06, 2012
  9. Jan 05, 2012
  10. Dec 29, 2011
    • Nick Lewycky's avatar
      Change CaptureTracking to pass a Use* instead of a Value* when a value is · 4c378a44
      Nick Lewycky authored
      captured. This allows the tracker to look at the specific use, which may be
      especially interesting for function calls.
      
      Use this to fix 'nocapture' deduction in FunctionAttrs. The existing one does
      not iterate until a fixpoint and does not guarantee that it produces the same
      result regardless of iteration order. The new implementation builds up a graph
      of how arguments are passed from function to function, and uses a bottom-up walk
      on the argument-SCCs to assign nocapture. This gets us nocapture more often, and
      does so rather efficiently and independent of iteration order.
      
      llvm-svn: 147327
      4c378a44
  11. Dec 12, 2011
  12. Dec 07, 2011
  13. Dec 02, 2011
  14. Dec 01, 2011
  15. Nov 30, 2011
  16. Nov 29, 2011
  17. Nov 15, 2011
  18. Nov 12, 2011
  19. Nov 11, 2011
  20. Nov 03, 2011
  21. Oct 20, 2011
    • Eli Friedman's avatar
      Refactor code from inlining and globalopt that checks whether a function... · 1923a330
      Eli Friedman authored
      Refactor code from inlining and globalopt that checks whether a function definition is unused, and enhance it so it can tell that functions which are only used by a blockaddress are in fact dead.  This probably doesn't happen much on most code, but the Linux kernel's _THIS_IP_ can trigger this issue with blockaddress.  (GlobalDCE can also handle the given tescase, but we only run that at -O3.)  Found while looking at PR11180.
      
      llvm-svn: 142572
      1923a330
  22. Oct 01, 2011
    • Andrew Trick's avatar
      Inlining and unrolling heuristics should be aware of free truncs. · f7656015
      Andrew Trick authored
      We want heuristics to be based on accurate data, but more importantly
      we don't want llvm to behave randomly. A benign trunc inserted by an
      upstream pass should not cause a wild swings in optimization
      level. See PR11034. It's a general problem with threshold-based
      heuristics, but we can make it less bad.
      
      llvm-svn: 140919
      f7656015
    • Andrew Trick's avatar
      whitespace · caa500bf
      Andrew Trick authored
      llvm-svn: 140916
      caa500bf
  23. Sep 27, 2011
  24. Sep 21, 2011
  25. Sep 20, 2011
  26. Aug 19, 2011
  27. Aug 16, 2011
  28. Aug 15, 2011
  29. Aug 12, 2011
  30. Aug 10, 2011
  31. Aug 04, 2011
  32. Aug 02, 2011
  33. Jul 31, 2011
    • Bill Wendling's avatar
      Add the 'resume' instruction for the new EH rewrite. · f891bf8b
      Bill Wendling authored
      This adds the 'resume' instruction class, IR parsing, and bitcode reading and
      writing. The 'resume' instruction resumes propagation of an existing (in-flight)
      exception whose unwinding was interrupted with a 'landingpad' instruction (to be
      added later).
      
      llvm-svn: 136589
      f891bf8b
Loading