[llvm-commits] CVS: llvm/lib/Target/X86/X86InstrInfo.td

Evan Cheng evan.cheng at apple.com
Wed Jun 14 15:25:08 PDT 2006



Changes in directory llvm/lib/Target/X86:

X86InstrInfo.td updated: 1.275 -> 1.276
---
Log message:

X86 call instructions can take variable number of operands. Parameters of
vector types are passed via XMM registers.


---
Diffs of the changes:  (+6 -5)

 X86InstrInfo.td |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)


Index: llvm/lib/Target/X86/X86InstrInfo.td
diff -u llvm/lib/Target/X86/X86InstrInfo.td:1.275 llvm/lib/Target/X86/X86InstrInfo.td:1.276
--- llvm/lib/Target/X86/X86InstrInfo.td:1.275	Fri Jun  2 16:09:10 2006
+++ llvm/lib/Target/X86/X86InstrInfo.td	Wed Jun 14 17:24:55 2006
@@ -438,11 +438,12 @@
   // All calls clobber the non-callee saved registers...
   let Defs = [EAX, ECX, EDX, FP0, FP1, FP2, FP3, FP4, FP5, FP6, ST0,
               XMM0, XMM1, XMM2, XMM3, XMM4, XMM5, XMM6, XMM7] in {
-    def CALLpcrel32 : I<0xE8, RawFrm, (ops i32imm:$dst), "call ${dst:call}",
-                      []>;
-    def CALL32r     : I<0xFF, MRM2r, (ops GR32:$dst), "call {*}$dst",
-                      [(X86call GR32:$dst)]>;
-    def CALL32m     : I<0xFF, MRM2m, (ops i32mem:$dst), "call {*}$dst", []>;
+    def CALLpcrel32 : I<0xE8, RawFrm, (ops i32imm:$dst, variable_ops),
+                        "call ${dst:call}", []>;
+    def CALL32r     : I<0xFF, MRM2r, (ops GR32:$dst, variable_ops),
+                        "call {*}$dst", [(X86call GR32:$dst)]>;
+    def CALL32m     : I<0xFF, MRM2m, (ops i32mem:$dst, variable_ops),
+                        "call {*}$dst", []>;
   }
 
 // Tail call stuff.






More information about the llvm-commits mailing list