Skip to content
  1. Apr 21, 2005
  2. Apr 20, 2005
  3. Apr 19, 2005
  4. Apr 18, 2005
    • Nate Begeman's avatar
      Next round of PPC CR optimizations. For the following code: · 2331c061
      Nate Begeman authored
      int %bar(float %a, float %b, float %c, float %d) {
      entry:
          %tmp.1 = setlt float %a, %d
          %tmp.2 = setlt float %b, %d
          %or = or bool %tmp.1, %tmp.2
          %tmp.3 = setgt float %c, %d
          %tmp.4 = or bool %or, %tmp.3
          %tmp.5 = and bool %tmp.4, true
          %retval = cast bool %tmp.5 to int
          ret int %retval
      }
      
      We now emit:
      
      _bar:
      .LBB_bar_0:     ; entry
              fcmpu cr0, f1, f4
              fcmpu cr1, f2, f4
              cror 0, 0, 4
              fcmpu cr1, f3, f4
              cror 28, 0, 5
              mfcr r2
              rlwinm r3, r2, 29, 31, 31
              blr
      
      Instead of:
      
      _bar:
      .LBB_bar_0:     ; entry
              fcmpu cr7, f1, f4
              mfcr r2
              rlwinm r2, r2, 29, 31, 31
              fcmpu cr7, f2, f4
              mfcr r3
              rlwinm r3, r3, 29, 31, 31
              or r2, r2, r3
              fcmpu cr7, f3, f4
              mfcr r3
              rlwinm r3, r3, 30, 31, 31
              or r3, r2, r3
              blr
      
      llvm-svn: 21321
      2331c061
    • Chris Lattner's avatar
      silence a bogus warning · ee844137
      Chris Lattner authored
      llvm-svn: 21320
      ee844137
Loading