Skip to content
  1. Apr 22, 2005
  2. Apr 21, 2005
    • Chris Lattner's avatar
      Fix a bug where we would not promote calls to invokes if they occured in · a3159af7
      Chris Lattner authored
      the same block as the setjmp.  Thanks to Greg Pettyjohn for noticing this!
      
      llvm-svn: 21403
      a3159af7
    • Chris Lattner's avatar
      Improve doxygen documentation, patch contributed by Evan Jones! · 7ceb081f
      Chris Lattner authored
      llvm-svn: 21393
      7ceb081f
    • Chris Lattner's avatar
      Instcombine this: · 374e6594
      Chris Lattner authored
              %shortcirc_val = select bool %tmp.1, bool true, bool %tmp.4             ; <bool> [#uses=1]
              %tmp.6 = cast bool %shortcirc_val to int                ; <int> [#uses=1]
      
      into this:
      
              %shortcirc_val = or bool %tmp.1, %tmp.4         ; <bool> [#uses=1]
              %tmp.6 = cast bool %shortcirc_val to int                ; <int> [#uses=1]
      
      not this:
      
              %tmp.4.cast = cast bool %tmp.4 to int           ; <int> [#uses=1]
              %tmp.6 = select bool %tmp.1, int 1, int %tmp.4.cast             ; <int> [#uses=1]
      
      llvm-svn: 21389
      374e6594
    • Chris Lattner's avatar
      Teach simplifycfg that setcc is cheap and non-trapping, so that it can · b38b443b
      Chris Lattner authored
      convert this:
      
              %tmp.1 = seteq int %i, 0                ; <bool> [#uses=1]
              br bool %tmp.1, label %shortcirc_done, label %shortcirc_next
      
      shortcirc_next:         ; preds = %entry
              %tmp.4 = seteq int %j, 0                ; <bool> [#uses=1]
              br label %shortcirc_done
      
      shortcirc_done:         ; preds = %shortcirc_next, %entry
              %shortcirc_val = phi bool [ %tmp.4, %shortcirc_next ], [ true, %entry ]         ; <bool> [#uses=1]
      
      to this:
              %tmp.1 = seteq int %i, 0                ; <bool> [#uses=1]
              %tmp.4 = seteq int %j, 0                ; <bool> [#uses=1]
              %shortcirc_val = select bool %tmp.1, bool true, bool %tmp.4             ; <bool> [#uses=1]
      
      ... which is later simplified by instcombine into an or.
      
      llvm-svn: 21388
      b38b443b
  3. Apr 19, 2005
  4. Apr 18, 2005
  5. Apr 15, 2005
    • Chris Lattner's avatar
      a new simple pass, which will be extended to be more useful in the future. · 16a50fd0
      Chris Lattner authored
      This pass forward branches through conditions when it can show that the
      conditions is either always true or false for a predecessor.  This currently
      only handles the most simple cases of this, but is successful at threading
      across 2489 branches and 65 switch instructions in 176.gcc, which isn't bad.
      
      llvm-svn: 21306
      16a50fd0
  6. Apr 12, 2005
  7. Apr 08, 2005
  8. Apr 07, 2005
  9. Mar 29, 2005
  10. Mar 28, 2005
  11. Mar 25, 2005
  12. Mar 23, 2005
  13. Mar 17, 2005
  14. Mar 15, 2005
  15. Mar 06, 2005
  16. Mar 05, 2005
  17. Mar 04, 2005
  18. Mar 03, 2005
  19. Mar 01, 2005
    • Jeff Cohen's avatar
      Fixed the following LSR bugs: · 8ea6f9e8
      Jeff Cohen authored
        * Loop invariant code does not dominate the loop header, but rather
          the end of the loop preheader.
      
        * The base for a reduced GEP isn't a constant unless all of its
          operands (preceding the induction variable) are constant.
      
        * Allow induction variable elimination for the simple case after all.
      
      Also made changes recommended by Chris for properly deleting
      instructions.
      
      llvm-svn: 20383
      8ea6f9e8
  20. Feb 28, 2005
  21. Feb 27, 2005
Loading