Skip to content
  1. Sep 10, 2010
  2. Sep 09, 2010
  3. Sep 01, 2010
    • Chris Lattner's avatar
      temporarily revert r112664, it is causing a decoding conflict, and · 39eccb47
      Chris Lattner authored
      the testcases should be merged.
      
      llvm-svn: 112711
      39eccb47
    • Bill Wendling's avatar
      We have a chance for an optimization. Consider this code: · 6789f8b6
      Bill Wendling authored
      int x(int t) {
        if (t & 256)
          return -26;
        return 0;
      }
      
      We generate this:
      
           tst.w   r0, #256
           mvn     r0, #25
           it      eq
           moveq   r0, #0
      
      while gcc generates this:
      
           ands    r0, r0, #256
           it      ne
           mvnne   r0, #25
           bx      lr
      
      Scandalous really!
      
      During ISel time, we can look for this particular pattern. One where we have a
      "MOVCC" that uses the flag off of a CMPZ that itself is comparing an AND
      instruction to 0. Something like this (greatly simplified):
      
        %r0 = ISD::AND ...
        ARMISD::CMPZ %r0, 0         @ sets [CPSR]
        %r0 = ARMISD::MOVCC 0, -26  @ reads [CPSR]
      
      All we have to do is convert the "ISD::AND" into an "ARM::ANDS" that sets [CPSR]
      when it's zero. The zero value will all ready be in the %r0 register and we only
      need to change it if the AND wasn't zero. Easy!
      
      llvm-svn: 112664
      6789f8b6
    • Bill Wendling's avatar
      And ANDS pattern to match the t2ANDS pattern. · d657d825
      Bill Wendling authored
      llvm-svn: 112654
      d657d825
  4. Aug 30, 2010
  5. Aug 29, 2010
  6. Aug 26, 2010
  7. Aug 17, 2010
  8. Aug 16, 2010
  9. Aug 12, 2010
  10. Aug 11, 2010
  11. Aug 05, 2010
  12. Jul 31, 2010
  13. Jul 30, 2010
  14. Jul 29, 2010
  15. Jul 17, 2010
  16. Jul 14, 2010
  17. Jul 13, 2010
  18. Jul 08, 2010
    • Dale Johannesen's avatar
      Changes to ARM tail calls, mostly cosmetic. · e2289285
      Dale Johannesen authored
      Add explicit testcases for tail calls within the same module.
      Duplicate some code to humor those who think .w doesn't apply on ARM.
      Leave this disabled on Thumb1, and add some comments explaining why it's hard
      and won't gain much.
      
      llvm-svn: 107851
      e2289285
  19. Jun 21, 2010
  20. Jun 19, 2010
  21. Jun 18, 2010
  22. Jun 16, 2010
Loading