encode rdtsc correctly
authorChris Lattner <sabre@nondot.org>
Sun, 20 Nov 2005 22:13:18 +0000 (22:13 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 20 Nov 2005 22:13:18 +0000 (22:13 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24435 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrInfo.td

index 0eaf337fd4ff77f2e2c3cc3c00de5d34fd49ef87..89457d7f45d56336515cf1115f6cba2a29f11ab1 100644 (file)
@@ -167,10 +167,6 @@ class Ii32<bits<8> o, Format f, dag ops, string asm, list<dag> pattern>
 def PHI : I<0, Pseudo, (ops variable_ops), "PHINODE">;        // PHI node.
 def NOOP : I<0x90, RawFrm, (ops), "nop">; // nop
 
-//FIXME: encode this correctly
-let Defs = [EAX, EDX] in
-  def RDTSC : I<0, Pseudo, (ops ), "rdtsc">; //in binary, this inst is 0x0f 0x31
-
 def ADJCALLSTACKDOWN : I<0, Pseudo, (ops i32imm:$amt), "#ADJCALLSTACKDOWN">;
 def ADJCALLSTACKUP   : I<0, Pseudo, (ops i32imm:$amt1, i32imm:$amt2),
                          "#ADJCALLSTACKUP">;
@@ -1609,6 +1605,13 @@ def CMPSDrm : I<0xC2, MRMSrcMem,
                 "cmp${cc}sd {$src, $dst|$dst, $src}">, XD;
 }
 
+//===----------------------------------------------------------------------===//
+// Miscellaneous Instructions
+//===----------------------------------------------------------------------===//
+
+def RDTSC : I<0x31, RawFrm, (ops), "rdtsc">, TB, Imp<[],[EAX,EDX]>;
+
+
 //===----------------------------------------------------------------------===//
 // Stack-based Floating point support
 //===----------------------------------------------------------------------===//