summaryrefslogtreecommitdiff
path: root/lib/Target/X86/X86InstrControl.td
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2011-01-03 22:53:22 +0000
committerEvan Cheng <evan.cheng@apple.com>2011-01-03 22:53:22 +0000
commit7158e08b8e619f4dcac9834c57f5f8afd6eea2eb (patch)
tree49f3021d388b4d92ceeace2b7b648696c88a8bfe /lib/Target/X86/X86InstrControl.td
parentfd1ed5f4c4afebf312ecb708280686c49a7d8839 (diff)
downloadllvm-7158e08b8e619f4dcac9834c57f5f8afd6eea2eb.tar.gz
llvm-7158e08b8e619f4dcac9834c57f5f8afd6eea2eb.tar.bz2
llvm-7158e08b8e619f4dcac9834c57f5f8afd6eea2eb.tar.xz
Use pushq / popq instead of subq $8, %rsp / addq $8, %rsp to adjust stack in
prologue and epilogue if the adjustment is 8. Similarly, use pushl / popl if the adjustment is 4 in 32-bit mode. In the epilogue, takes care to pop to a caller-saved register that's not live at the exit (either return or tailcall instruction). rdar://8771137 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122783 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrControl.td')
-rw-r--r--lib/Target/X86/X86InstrControl.td2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Target/X86/X86InstrControl.td b/lib/Target/X86/X86InstrControl.td
index 79a6e4ae52..62ab53eb09 100644
--- a/lib/Target/X86/X86InstrControl.td
+++ b/lib/Target/X86/X86InstrControl.td
@@ -26,7 +26,7 @@ let isTerminator = 1, isReturn = 1, isBarrier = 1,
[(X86retflag timm:$amt)]>;
def RETIW : Ii16<0xC2, RawFrm, (outs), (ins i16imm:$amt, variable_ops),
"retw\t$amt",
- [(X86retflag timm:$amt)]>, OpSize;
+ []>, OpSize;
def LRETL : I <0xCB, RawFrm, (outs), (ins),
"lretl", []>;
def LRETQ : RI <0xCB, RawFrm, (outs), (ins),