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

Chris Lattner lattner at cs.uiuc.edu
Tue Oct 29 19:16:01 PST 2002


Changes in directory llvm/lib/Target/X86:

X86InstrInfo.cpp updated: 1.4 -> 1.5
X86InstrInfo.def updated: 1.5 -> 1.6

---
Log message:

Set the destination register field based on the target specific flags


---
Diffs of the changes:

Index: llvm/lib/Target/X86/X86InstrInfo.cpp
diff -u llvm/lib/Target/X86/X86InstrInfo.cpp:1.4 llvm/lib/Target/X86/X86InstrInfo.cpp:1.5
--- llvm/lib/Target/X86/X86InstrInfo.cpp:1.4	Tue Oct 29 15:01:27 2002
+++ llvm/lib/Target/X86/X86InstrInfo.cpp	Tue Oct 29 19:15:31 2002
@@ -12,8 +12,11 @@
 // descriptors
 //
 static const MachineInstrDescriptor X86Insts[] = {
-#define I(ENUM, NAME, FLAGS, TSFLAGS) \
-             { NAME, -1, -1, 0, false, 0, 0, TSFLAGS, FLAGS },
+#define I(ENUM, NAME, FLAGS, TSFLAGS)   \
+             { NAME,                    \
+               -1, /* Always vararg */  \
+               ((TSFLAGS) & X86II::Void) ? -1 : 0,  /* Result is in 0 */ \
+               0, false, 0, 0, TSFLAGS, FLAGS, TSFLAGS },
 #include "X86InstrInfo.def"
 };
 


Index: llvm/lib/Target/X86/X86InstrInfo.def
diff -u llvm/lib/Target/X86/X86InstrInfo.def:1.5 llvm/lib/Target/X86/X86InstrInfo.def:1.6
--- llvm/lib/Target/X86/X86InstrInfo.def:1.5	Tue Oct 29 19:09:34 2002
+++ llvm/lib/Target/X86/X86InstrInfo.def	Tue Oct 29 19:15:31 2002
@@ -5,6 +5,10 @@
 // specified below, and is used to make all of the information relevant to an
 // instruction be in one place.
 //
+// Note that X86 Instructions always have the destination register listed as
+// operand 0, unless it does not produce a value (in which case the TSFlags will
+// include X86II::Void).
+//
 //===----------------------------------------------------------------------===//
 
 // NOTE: No include guards desired





More information about the llvm-commits mailing list