patch-2.1.97 linux/arch/sparc/math-emu/fcmpd.c

Next file: linux/arch/sparc/math-emu/fcmped.c
Previous file: linux/arch/sparc/math-emu/fabss.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.96/linux/arch/sparc/math-emu/fcmpd.c linux/arch/sparc/math-emu/fcmpd.c
@@ -0,0 +1,18 @@
+#include "soft-fp.h"
+#include "double.h"
+
+int FCMPD(void *rd, void *rs2, void *rs1)
+{
+	FP_DECL_D(A); FP_DECL_D(B);
+	long ret;
+	unsigned long *fsr = rd;
+	
+	__FP_UNPACK_D(A, rs1);
+	__FP_UNPACK_D(B, rs2);
+	FP_CMP_D(ret, B, A, 2);
+	if (ret == -1)
+		ret = 2;
+
+	*fsr = (*fsr & ~0xc00) | (ret << 10); 
+	return 1;
+}

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov