aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/X86/X86InstrInfo.td
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-06-11 04:41:24 +0000
committerChris Lattner <sabre@nondot.org>2004-06-11 04:41:24 +0000
commitab8deccb82460527562d1c36a787537e4edaa9dd (patch)
tree7abcdd2df03d89d90318b2758cb10bf2ed54a770 /lib/Target/X86/X86InstrInfo.td
parent00cda7a32dfc1acb10ff69ea5244ee84100307be (diff)
downloadexternal_llvm-ab8deccb82460527562d1c36a787537e4edaa9dd.zip
external_llvm-ab8deccb82460527562d1c36a787537e4edaa9dd.tar.gz
external_llvm-ab8deccb82460527562d1c36a787537e4edaa9dd.tar.bz2
Introduce a new FP instruction type to separate the compare cases from the
twoarg cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14143 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrInfo.td')
-rw-r--r--lib/Target/X86/X86InstrInfo.td9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/Target/X86/X86InstrInfo.td b/lib/Target/X86/X86InstrInfo.td
index e8888d6..7de7cb8 100644
--- a/lib/Target/X86/X86InstrInfo.td
+++ b/lib/Target/X86/X86InstrInfo.td
@@ -66,8 +66,9 @@ def ZeroArgFP : FPFormat<1>;
def OneArgFP : FPFormat<2>;
def OneArgFPRW : FPFormat<3>;
def TwoArgFP : FPFormat<4>;
-def CondMovFP : FPFormat<5>;
-def SpecialFP : FPFormat<6>;
+def CompareFP : FPFormat<5>;
+def CondMovFP : FPFormat<6>;
+def SpecialFP : FPFormat<7>;
class X86Inst<string nam, bits<8> opcod, Format f, MemType m, ImmType i> : Instruction {
@@ -736,8 +737,8 @@ def FpSUB : FPI<"FSUB", 0, Pseudo, TwoArgFP>; // f1 = fsub f2, f3
def FpMUL : FPI<"FMUL", 0, Pseudo, TwoArgFP>; // f1 = fmul f2, f3
def FpDIV : FPI<"FDIV", 0, Pseudo, TwoArgFP>; // f1 = fdiv f2, f3
-def FpUCOM : FPI<"FUCOM", 0, Pseudo, TwoArgFP>; // FPSW = fucom f1, f2
-def FpUCOMI : FPI<"FUCOMI", 0, Pseudo, TwoArgFP>; // CC = fucomi f1, f2
+def FpUCOM : FPI<"FUCOM", 0, Pseudo, CompareFP>; // FPSW = fucom f1, f2
+def FpUCOMI : FPI<"FUCOMI", 0, Pseudo, CompareFP>; // CC = fucomi f1, f2
def FpGETRESULT : FPI<"FGETRESULT",0, Pseudo, SpecialFP>; // FPR = ST(0)
def FpSETRESULT : FPI<"FSETRESULT",0, Pseudo, SpecialFP>; // ST(0) = FPR