Skip to content
  1. Dec 30, 2007
    • Bill Wendling's avatar
      If we have a load of a global address that's not modified during the · 7749a901
      Bill Wendling authored
      function, then go ahead and hoist it out of the loop. This is the result:
      
      $ cat a.c
      volatile int G;
      
      int A(int N) {
        for (; N > 0; --N)
          G++;
      }
      $ llc -o - -relocation-model=pic
      _A:
      ...
      LBB1_2: # bb
              movl    L_G$non_lazy_ptr-"L1$pb"(%eax), %esi
              incl    (%esi)
              incl    %edx
              cmpl    %ecx, %edx
              jne     LBB1_2  # bb
      ...
      $ llc -o - -relocation-model=pic -machine-licm
      _A:
      ...
              movl    L_G$non_lazy_ptr-"L1$pb"(%eax), %eax
      LBB1_2: # bb
              incl    (%eax)
              incl    %edx
              cmpl    %ecx, %edx
              jne     LBB1_2  # bb
      ...
      
      I'm limiting this to the MOV32rm x86 instruction for now.
      
      llvm-svn: 45444
      7749a901
    • Chris Lattner's avatar
      Shrinkify the machine operand creation method names. · 4b762496
      Chris Lattner authored
      llvm-svn: 45433
      4b762496
  2. Dec 29, 2007
  3. Dec 28, 2007
  4. Dec 24, 2007
  5. Dec 22, 2007
  6. Dec 21, 2007
  7. Dec 20, 2007
  8. Dec 18, 2007
  9. Dec 17, 2007
  10. Dec 16, 2007
  11. Dec 15, 2007
  12. Dec 14, 2007
  13. Dec 13, 2007
  14. Dec 12, 2007
Loading