Skip to content
  1. Mar 30, 2004
  2. Mar 29, 2004
  3. Mar 19, 2004
  4. Mar 18, 2004
  5. Mar 16, 2004
  6. Mar 15, 2004
  7. Mar 14, 2004
  8. Mar 13, 2004
  9. Mar 12, 2004
  10. Mar 11, 2004
  11. Mar 10, 2004
  12. Mar 09, 2004
  13. Mar 08, 2004
    • Chris Lattner's avatar
      Avoid allocating special registers a bit more robustly · 98502aae
      Chris Lattner authored
      llvm-svn: 12207
      98502aae
    • Chris Lattner's avatar
      Implement folding explicit load instructions into binary operations. For a · 653e662a
      Chris Lattner authored
      testcase like this:
      
      int %test(int* %P, int %A) {
              %Pv = load int* %P
              %B = add int %A, %Pv
              ret int %B
      }
      
      We now generate:
      test:
              mov %ECX, DWORD PTR [%ESP + 4]
              mov %EAX, DWORD PTR [%ESP + 8]
              add %EAX, DWORD PTR [%ECX]
              ret
      
      Instead of:
      test:
              mov %EAX, DWORD PTR [%ESP + 4]
              mov %ECX, DWORD PTR [%ESP + 8]
              mov %EAX, DWORD PTR [%EAX]
              add %EAX, %ECX
              ret
      
      ... saving one instruction, and often a register.  Note that there are a lot
      of other instructions that could use this, but they aren't handled.  I'm not
      really interested in adding them, but mul/div and all of the FP instructions
      could be supported as well if someone wanted to add them.
      
      llvm-svn: 12204
      653e662a
Loading