uint <-> double conversion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30862 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/ARM/ARMInstrInfo.td b/lib/Target/ARM/ARMInstrInfo.td
index 5965774..3281e97 100644
--- a/lib/Target/ARM/ARMInstrInfo.td
+++ b/lib/Target/ARM/ARMInstrInfo.td
@@ -81,7 +81,9 @@
def armfsitod : SDNode<"ARMISD::FSITOD", SDTUnaryOp>;
def armftosid : SDNode<"ARMISD::FTOSID", SDTUnaryOp>;
def armfuitos : SDNode<"ARMISD::FUITOS", SDTUnaryOp>;
+def armftouis : SDNode<"ARMISD::FTOUIS", SDTUnaryOp>;
def armfuitod : SDNode<"ARMISD::FUITOD", SDTUnaryOp>;
+def armftouid : SDNode<"ARMISD::FTOUID", SDTUnaryOp>;
def SDTarmfmrrd : SDTypeProfile<0, 3, [SDTCisInt<0>, SDTCisInt<1>, SDTCisFP<2>]>;
def armfmrrd : SDNode<"ARMISD::FMRRD", SDTarmfmrrd,
@@ -215,9 +217,15 @@
def FUITOS : InstARM<(ops FPRegs:$dst, FPRegs:$src),
"fuitos $dst, $src", [(set FPRegs:$dst, (armfuitos FPRegs:$src))]>;
+def FTOUIS : InstARM<(ops FPRegs:$dst, FPRegs:$src),
+ "ftouis $dst, $src", [(set FPRegs:$dst, (armftouis FPRegs:$src))]>;
+
def FUITOD : InstARM<(ops DFPRegs:$dst, FPRegs:$src),
"fuitod $dst, $src", [(set DFPRegs:$dst, (armfuitod FPRegs:$src))]>;
+def FTOUID : InstARM<(ops FPRegs:$dst, DFPRegs:$src),
+ "ftouid $dst, $src", [(set FPRegs:$dst, (armftouid DFPRegs:$src))]>;
+
def FCVTDS : InstARM<(ops DFPRegs:$dst, FPRegs:$src),
"fcvtds $dst, $src", [(set DFPRegs:$dst, (fextend FPRegs:$src))]>;