[llvm-commits] CVS: llvm/lib/Target/X86/X86RegisterInfo.cpp

Chris Lattner lattner at cs.uiuc.edu
Sat May 14 22:50:11 PDT 2005



Changes in directory llvm/lib/Target/X86:

X86RegisterInfo.cpp updated: 1.104 -> 1.105
---
Log message:

Teach reginfo how to deal with ADJSTACKPTRri, allowing us to generate:
        add %ESP, 20
        jmp %EDX  # TAIL CALL

instead of:
        add %ESP, -8
        add %ESP, 28
        jmp %EDX  # TAIL CALL



---
Diffs of the changes:  (+3 -0)

 X86RegisterInfo.cpp |    3 +++
 1 files changed, 3 insertions(+)


Index: llvm/lib/Target/X86/X86RegisterInfo.cpp
diff -u llvm/lib/Target/X86/X86RegisterInfo.cpp:1.104 llvm/lib/Target/X86/X86RegisterInfo.cpp:1.105
--- llvm/lib/Target/X86/X86RegisterInfo.cpp:1.104	Sat May 14 18:53:43 2005
+++ llvm/lib/Target/X86/X86RegisterInfo.cpp	Sun May 15 00:49:58 2005
@@ -544,6 +544,9 @@
                    PI->getOperand(0).getReg() == X86::ESP) {
           NumBytes -= PI->getOperand(1).getImmedValue();
           MBB.erase(PI);
+        } else if (PI->getOpcode() == X86::ADJSTACKPTRri) {
+          NumBytes += PI->getOperand(1).getImmedValue();
+          MBB.erase(PI);
         }
       }
 






More information about the llvm-commits mailing list