mips32: Add tests for mips32 floating point compare instructions.

Tests that are testing mips instructions c.cond.s and c.cond.d have been added in none/tests/mips32.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13839 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/none/tests/mips32/Makefile.am b/none/tests/mips32/Makefile.am
index 790cbf4..fb6fa23 100644
--- a/none/tests/mips32/Makefile.am
+++ b/none/tests/mips32/Makefile.am
@@ -33,7 +33,8 @@
 	test_fcsr.stdout.exp test_fcsr.stderr.exp test_fcsr.vgtest \
 	test_math.stdout.exp test_math.stderr.exp test_math.vgtest \
 	round_fpu64.stdout.exp round_fpu64.stdout.exp-fpu32 \
-	round_fpu64.stderr.exp round_fpu64.vgtest
+	round_fpu64.stderr.exp round_fpu64.vgtest \
+	fpu_branches.stdout.exp fpu_branches.stderr.exp fpu_branches.vgtest
 
 check_PROGRAMS = \
 	allexec \
@@ -54,7 +55,8 @@
 	unaligned_load_store \
 	test_fcsr \
 	test_math \
-	round_fpu64
+	round_fpu64 \
+	fpu_branches
 
 AM_CFLAGS    += @FLAG_M32@
 AM_CXXFLAGS  += @FLAG_M32@
diff --git a/none/tests/mips32/fpu_branches.c b/none/tests/mips32/fpu_branches.c
new file mode 100644
index 0000000..f81321d
--- /dev/null
+++ b/none/tests/mips32/fpu_branches.c
@@ -0,0 +1,317 @@
+#include <stdio.h>
+
+#define MAX_ARR 24
+
+const float fs_f[] = {
+   0,         456.25,   3,          -1,
+   1384.5,    -7.25,    1000000000, -5786.5,
+   1752,      0.015625, 0.03125,    -248562.75,
+   -45786.5,  456,      34.03125,   45786.75,
+   1752065,   107,      -45667.25,  -7,
+   -347856.5, 356047.5, -1.0,       23.0625
+};
+
+const float ft_f[] = {
+   -4578.5, 456.25,   34.03125, 4578.75,
+   175,     107,      -456.25,  -7.25,
+   -3478.5, 356.5,    -1.0,     23.0625,
+   0,       456.25,   3,        -1,
+   1384.5,  -7,       100,      -5786.5,
+   1752,    0.015625, 0.03125,  -248562.75
+};
+
+const double fs_d[] = {
+   0,         456.25,   3,          -1,
+   1384.5,    -7.25,    1000000000, -5786.5,
+   1752,      0.015625, 0.03125,    -248562.75,
+   -45786.5,  456,      34.03125,   45786.75,
+   1752065,   107,      -45667.25,  -7,
+   -347856.5, 356047.5, -1.0,       23.0625
+};
+
+const double ft_d[] = {
+   -45786.5,  456.25,   34.03125,   45786.75,
+   1752065,   107,      -45667.25,  -7.25,
+   -347856.5, 356047.5, -1.0,       23.0625,
+   0,         456.25,   3,          -1,
+   1384.5,    -7,       1000000000, -5786.5,
+   1752,      0.015625, 0.03125,    -248562.75
+};
+
+/* Conditional macros.*/
+#define TESTINST1s(instruction, RDval)               \
+{                                                    \
+   float outf = 0;                                   \
+   __asm__ __volatile__(                             \
+      ".set        noreorder"                "\n\t"  \
+      "mov.s       $f0, %1"                  "\n\t"  \
+      "mov.s       $f2, %2"                  "\n\t"  \
+      "c.eq.s      $f0, $f2"                 "\n\t"  \
+      instruction" end"instruction"s"#RDval  "\n\t"  \
+      "nop"                                  "\n\t"  \
+      "add.s       $f0, $f0, $f2"            "\n\t"  \
+      "end"instruction"s"#RDval":"           "\n\t"  \
+      "mov.s       %0,  $f0"                 "\n\t"  \
+      ".set        reorder"                  "\n\t"  \
+      : "=f" (outf)                                  \
+      : "f" (fs_f[i]) , "f" (ft_f[i])                \
+      : "$f0", "$f2"                                 \
+   );                                                \
+   printf("%s, c.eq.s   out=%f, fs=%f, ft=%f\n",     \
+          instruction, outf, fs_f[i], ft_f[i]);      \
+}
+
+#define TESTINST1d(instruction, RDval)               \
+{                                                    \
+   double outd = 0;                                  \
+   __asm__ __volatile__(                             \
+      ".set        noreorder"                "\n\t"  \
+      "mov.d       $f0, %1"                  "\n\t"  \
+      "mov.d       $f2, %2"                  "\n\t"  \
+      "c.eq.d      $f0, $f2"                 "\n\t"  \
+      instruction" end"instruction"d"#RDval  "\n\t"  \
+      "nop"                                  "\n\t"  \
+      "add.d       $f0, $f0, $f2"            "\n\t"  \
+      "end"instruction"d"#RDval":"           "\n\t"  \
+      "mov.d       %0,  $f0"                 "\n\t"  \
+      ".set        reorder"                  "\n\t"  \
+      : "=f" (outd)                                  \
+      : "f" (fs_d[i]) , "f" (ft_d[i])                \
+      : "$f0", "$f1", "$f2", "$f3"                   \
+   );                                                \
+   printf("%s, c.eq.d   out=%f, fs=%f, ft=%f\n",     \
+          instruction, outd, fs_d[i], ft_d[i]);      \
+}
+
+#define TESTINST2s(instruction, RDval)               \
+{                                                    \
+   float outf = 0;                                   \
+   __asm__ __volatile__(                             \
+      ".set        noreorder"                "\n\t"  \
+      "mov.s       $f0, %1"                  "\n\t"  \
+      "mov.s       $f2, %2"                  "\n\t"  \
+      "c.eq.s      $f0, $f2"                 "\n\t"  \
+      instruction" end"instruction"s"#RDval  "\n\t"  \
+      "add.s       $f0, $f0, $f2"            "\n\t"  \
+      "end"instruction"s"#RDval":"           "\n\t"  \
+      "mov.s       %0, $f0"                  "\n\t"  \
+      ".set        reorder"                  "\n\t"  \
+      : "=f" (outf)                                  \
+      : "f" (fs_f[i]) , "f" (ft_f[i])                \
+      : "$f0", "$f2"                                 \
+   );                                                \
+   printf("%s, c.eq.s   out=%f, fs=%f, ft=%f\n",     \
+          instruction, outf, fs_f[i], ft_f[i]);      \
+}
+
+#define TESTINST2d(instruction, RDval)               \
+{                                                    \
+   double outd = 0;                                  \
+   __asm__ __volatile__(                             \
+      ".set        noreorder"                "\n\t"  \
+      "mov.d       $f0, %1"                  "\n\t"  \
+      "mov.d       $f2, %2"                  "\n\t"  \
+      "c.eq.d      $f0, $f2"                 "\n\t"  \
+      instruction" end"instruction"d"#RDval  "\n\t"  \
+      "add.d       $f0, $f0, $f2"            "\n\t"  \
+      "end"instruction"d"#RDval":"           "\n\t"  \
+      "mov.d       %0,  $f0"                 "\n\t"  \
+      ".set        reorder"                  "\n\t"  \
+      : "=f" (outd)                                  \
+      : "f" (fs_d[i]) , "f" (ft_d[i])                \
+      : "$f0", "$f1", "$f2", "$f3"                   \
+   );                                                \
+   printf("%s, c.eq.d   out=%f, fs=%f, ft=%f\n",     \
+          instruction, outd, fs_d[i], ft_d[i]);      \
+}
+
+#define TESTINST_CONDs(instruction, RDval)       \
+{                                                \
+   float outf = 0;                               \
+   __asm__ __volatile__(                         \
+      ".set        noreorder"         "\n\t"     \
+      "mov.s       $f0, %1"           "\n\t"     \
+      "mov.s       $f2, %2"           "\n\t"     \
+      instruction" $f0, $f2"          "\n\t"     \
+      "bc1f end"instruction"s"#RDval  "\n\t"     \
+      "nop"                           "\n\t"     \
+      "add.s       $f0, $f0, $f2"     "\n\t"     \
+      "end"instruction"s"#RDval":"    "\n\t"     \
+      "mov.s       %0,  $f0"          "\n\t"     \
+      ".set        reorder"           "\n\t"     \
+      : "=f" (outf)                              \
+      : "f" (fs_f[i]) , "f" (ft_f[i])            \
+      : "$f0", "$f1", "$f2"                      \
+   );                                            \
+   printf("%s, bc1f   out=%f, fs=%f, ft=%f\n",   \
+          instruction, outf, fs_f[i], ft_f[i]);  \
+}
+
+#define TESTINST_CONDd(instruction, RDval)       \
+{                                                \
+   double outd = 0;                              \
+   __asm__ __volatile__(                         \
+      ".set        noreorder"         "\n\t"     \
+      "mov.d       $f0, %1"           "\n\t"     \
+      "mov.d       $f2, %2"           "\n\t"     \
+      instruction" $f0, $f2"          "\n\t"     \
+      "bc1f end"instruction"d"#RDval  "\n\t"     \
+      "nop"                           "\n\t"     \
+      "add.d       $f0, $f0, $f2"     "\n\t"     \
+      "end"instruction"d"#RDval":"    "\n\t"     \
+      "mov.d       %0,  $f0"          "\n\t"     \
+      ".set        reorder"           "\n\t"     \
+      : "=f" (outd)                              \
+      : "f" (fs_d[i]) , "f" (ft_d[i])            \
+      : "$f0", "$f1", "$f2", "$f2"               \
+   );                                            \
+   printf("%s, bc1f   out=%f, fs=%f, ft=%f\n",   \
+          instruction, outd, fs_d[i], ft_d[i]);  \
+}
+
+int main()
+{
+   int i = 0;
+
+   printf("--- BC1F ---  if fs != ft then " \
+          "out = fs else out = fs + ft\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST1s("bc1f", i);
+      TESTINST1d("bc1f", i);
+   }
+
+   printf("--- BC1T ---  if fs == ft then " \
+          "out = fs else out = fs + ft\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST1s("bc1t", i);
+      TESTINST1d("bc1t", i);
+   }
+
+   printf("--- BC1FL ---  if fs == ft then " \
+          "out = ft else out = fs + ft\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST2s("bc1fl", i);
+      TESTINST2d("bc1fl", i);
+   }
+
+   printf("--- BC1TL ---  if fs != ft then " \
+          "out = fs else out = fs + ft\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST2s("bc1tl", i);
+      TESTINST2d("bc1tl", i);
+   }
+
+   printf("--- C.F.S/D ---  if false then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.f.s", i);
+      TESTINST_CONDd("c.f.d", i);
+   }
+
+   printf("--- C.UN.S/D ---  if unordered(fs, ft) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.un.s", i);
+      TESTINST_CONDd("c.un.d", i);
+   }
+
+   printf("--- C.EQ.S/D ---  if fs == ft then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.eq.s", i);
+      TESTINST_CONDd("c.eq.d", i);
+   }
+
+   printf("--- C.UEQ.S/D ---  if (unordered(fs, ft) or (fs == ft)) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.ueq.s", i);
+      TESTINST_CONDd("c.ueq.d", i);
+   }
+
+   printf("--- C.OLT.S/D ---  if (ordered(fs, ft) or (fs < ft)) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.olt.s", i);
+      TESTINST_CONDd("c.olt.d", i);
+   }
+
+   printf("--- C.ULT.S/D ---  if (unordered(fs, ft) or (fs < ft)) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.ult.s", i);
+      TESTINST_CONDd("c.ult.d", i);
+   }
+
+   printf("--- C.OLE.S/D ---  if (ordered(fs, ft) or (fs <= ft)) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.ole.s", i);
+      TESTINST_CONDd("c.ole.d", i);
+   }
+
+   printf("--- C.ULE.S/D ---  if (unordered(fs, ft) or (fs <= ft)) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.ule.s", i);
+      TESTINST_CONDd("c.ule.d", i);
+   }
+
+   printf("--- C.SF.S/D ---  if signaling false then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.sf.s", i);
+      TESTINST_CONDd("c.sf.d", i);
+   }
+
+   printf("--- C.NGLE.S/D --- if not ((fs > ft) or (fs <= ft)) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.ngle.s", i);
+      TESTINST_CONDd("c.ngle.d", i);
+   }
+
+   printf("--- C.SEQ.S/D ---  if signaling equal then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.seq.s", i);
+      TESTINST_CONDd("c.seq.d", i);
+   }
+
+   printf("--- C.NGL.S/D ---  if not ((fs > ft) or (fs < ft)) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.ngl.s", i);
+      TESTINST_CONDd("c.ngl.d", i);
+   }
+
+   printf("--- C.LT.S/D ---  if fs < ft then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.lt.s", i);
+      TESTINST_CONDd("c.lt.d", i);
+   }
+
+   printf("--- C.NGE.S/D ---  if not (fs >= ft) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.nge.s", i);
+      TESTINST_CONDd("c.nge.d", i);
+   }
+
+   printf("--- C.LE.S/D ---  if fs <= ft then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.le.s", i);
+      TESTINST_CONDd("c.le.d", i);
+   }
+
+   printf("--- C.NGT.S/D ---  if not (fs > ft) then " \
+          "out = fs + ft else out = fs\n");
+   for (i = 0; i < MAX_ARR; i++) {
+      TESTINST_CONDs("c.ngt.s", i);
+      TESTINST_CONDd("c.ngt.d", i);
+   }
+   return 0;
+}
+
diff --git a/none/tests/mips32/fpu_branches.stderr.exp b/none/tests/mips32/fpu_branches.stderr.exp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/none/tests/mips32/fpu_branches.stderr.exp
diff --git a/none/tests/mips32/fpu_branches.stdout.exp b/none/tests/mips32/fpu_branches.stdout.exp
new file mode 100644
index 0000000..fe5f2c9
--- /dev/null
+++ b/none/tests/mips32/fpu_branches.stdout.exp
@@ -0,0 +1,980 @@
+--- BC1F ---  if fs != ft then out = fs else out = fs + ft
+bc1f, c.eq.s   out=0.000000, fs=0.000000, ft=-4578.500000
+bc1f, c.eq.d   out=0.000000, fs=0.000000, ft=-45786.500000
+bc1f, c.eq.s   out=912.500000, fs=456.250000, ft=456.250000
+bc1f, c.eq.d   out=912.500000, fs=456.250000, ft=456.250000
+bc1f, c.eq.s   out=3.000000, fs=3.000000, ft=34.031250
+bc1f, c.eq.d   out=3.000000, fs=3.000000, ft=34.031250
+bc1f, c.eq.s   out=-1.000000, fs=-1.000000, ft=4578.750000
+bc1f, c.eq.d   out=-1.000000, fs=-1.000000, ft=45786.750000
+bc1f, c.eq.s   out=1384.500000, fs=1384.500000, ft=175.000000
+bc1f, c.eq.d   out=1384.500000, fs=1384.500000, ft=1752065.000000
+bc1f, c.eq.s   out=-7.250000, fs=-7.250000, ft=107.000000
+bc1f, c.eq.d   out=-7.250000, fs=-7.250000, ft=107.000000
+bc1f, c.eq.s   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+bc1f, c.eq.d   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+bc1f, c.eq.s   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+bc1f, c.eq.d   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+bc1f, c.eq.s   out=1752.000000, fs=1752.000000, ft=-3478.500000
+bc1f, c.eq.d   out=1752.000000, fs=1752.000000, ft=-347856.500000
+bc1f, c.eq.s   out=0.015625, fs=0.015625, ft=356.500000
+bc1f, c.eq.d   out=0.015625, fs=0.015625, ft=356047.500000
+bc1f, c.eq.s   out=0.031250, fs=0.031250, ft=-1.000000
+bc1f, c.eq.d   out=0.031250, fs=0.031250, ft=-1.000000
+bc1f, c.eq.s   out=-248562.750000, fs=-248562.750000, ft=23.062500
+bc1f, c.eq.d   out=-248562.750000, fs=-248562.750000, ft=23.062500
+bc1f, c.eq.s   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1f, c.eq.d   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1f, c.eq.s   out=456.000000, fs=456.000000, ft=456.250000
+bc1f, c.eq.d   out=456.000000, fs=456.000000, ft=456.250000
+bc1f, c.eq.s   out=34.031250, fs=34.031250, ft=3.000000
+bc1f, c.eq.d   out=34.031250, fs=34.031250, ft=3.000000
+bc1f, c.eq.s   out=45786.750000, fs=45786.750000, ft=-1.000000
+bc1f, c.eq.d   out=45786.750000, fs=45786.750000, ft=-1.000000
+bc1f, c.eq.s   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+bc1f, c.eq.d   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+bc1f, c.eq.s   out=107.000000, fs=107.000000, ft=-7.000000
+bc1f, c.eq.d   out=107.000000, fs=107.000000, ft=-7.000000
+bc1f, c.eq.s   out=-45667.250000, fs=-45667.250000, ft=100.000000
+bc1f, c.eq.d   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+bc1f, c.eq.s   out=-7.000000, fs=-7.000000, ft=-5786.500000
+bc1f, c.eq.d   out=-7.000000, fs=-7.000000, ft=-5786.500000
+bc1f, c.eq.s   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+bc1f, c.eq.d   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+bc1f, c.eq.s   out=356047.500000, fs=356047.500000, ft=0.015625
+bc1f, c.eq.d   out=356047.500000, fs=356047.500000, ft=0.015625
+bc1f, c.eq.s   out=-1.000000, fs=-1.000000, ft=0.031250
+bc1f, c.eq.d   out=-1.000000, fs=-1.000000, ft=0.031250
+bc1f, c.eq.s   out=23.062500, fs=23.062500, ft=-248562.750000
+bc1f, c.eq.d   out=23.062500, fs=23.062500, ft=-248562.750000
+--- BC1T ---  if fs == ft then out = fs else out = fs + ft
+bc1t, c.eq.s   out=-4578.500000, fs=0.000000, ft=-4578.500000
+bc1t, c.eq.d   out=-45786.500000, fs=0.000000, ft=-45786.500000
+bc1t, c.eq.s   out=456.250000, fs=456.250000, ft=456.250000
+bc1t, c.eq.d   out=456.250000, fs=456.250000, ft=456.250000
+bc1t, c.eq.s   out=37.031250, fs=3.000000, ft=34.031250
+bc1t, c.eq.d   out=37.031250, fs=3.000000, ft=34.031250
+bc1t, c.eq.s   out=4577.750000, fs=-1.000000, ft=4578.750000
+bc1t, c.eq.d   out=45785.750000, fs=-1.000000, ft=45786.750000
+bc1t, c.eq.s   out=1559.500000, fs=1384.500000, ft=175.000000
+bc1t, c.eq.d   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+bc1t, c.eq.s   out=99.750000, fs=-7.250000, ft=107.000000
+bc1t, c.eq.d   out=99.750000, fs=-7.250000, ft=107.000000
+bc1t, c.eq.s   out=999999552.000000, fs=1000000000.000000, ft=-456.250000
+bc1t, c.eq.d   out=999954332.750000, fs=1000000000.000000, ft=-45667.250000
+bc1t, c.eq.s   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+bc1t, c.eq.d   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+bc1t, c.eq.s   out=-1726.500000, fs=1752.000000, ft=-3478.500000
+bc1t, c.eq.d   out=-346104.500000, fs=1752.000000, ft=-347856.500000
+bc1t, c.eq.s   out=356.515625, fs=0.015625, ft=356.500000
+bc1t, c.eq.d   out=356047.515625, fs=0.015625, ft=356047.500000
+bc1t, c.eq.s   out=-0.968750, fs=0.031250, ft=-1.000000
+bc1t, c.eq.d   out=-0.968750, fs=0.031250, ft=-1.000000
+bc1t, c.eq.s   out=-248539.687500, fs=-248562.750000, ft=23.062500
+bc1t, c.eq.d   out=-248539.687500, fs=-248562.750000, ft=23.062500
+bc1t, c.eq.s   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1t, c.eq.d   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1t, c.eq.s   out=912.250000, fs=456.000000, ft=456.250000
+bc1t, c.eq.d   out=912.250000, fs=456.000000, ft=456.250000
+bc1t, c.eq.s   out=37.031250, fs=34.031250, ft=3.000000
+bc1t, c.eq.d   out=37.031250, fs=34.031250, ft=3.000000
+bc1t, c.eq.s   out=45785.750000, fs=45786.750000, ft=-1.000000
+bc1t, c.eq.d   out=45785.750000, fs=45786.750000, ft=-1.000000
+bc1t, c.eq.s   out=1753449.500000, fs=1752065.000000, ft=1384.500000
+bc1t, c.eq.d   out=1753449.500000, fs=1752065.000000, ft=1384.500000
+bc1t, c.eq.s   out=100.000000, fs=107.000000, ft=-7.000000
+bc1t, c.eq.d   out=100.000000, fs=107.000000, ft=-7.000000
+bc1t, c.eq.s   out=-45567.250000, fs=-45667.250000, ft=100.000000
+bc1t, c.eq.d   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+bc1t, c.eq.s   out=-5793.500000, fs=-7.000000, ft=-5786.500000
+bc1t, c.eq.d   out=-5793.500000, fs=-7.000000, ft=-5786.500000
+bc1t, c.eq.s   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+bc1t, c.eq.d   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+bc1t, c.eq.s   out=356047.500000, fs=356047.500000, ft=0.015625
+bc1t, c.eq.d   out=356047.515625, fs=356047.500000, ft=0.015625
+bc1t, c.eq.s   out=-0.968750, fs=-1.000000, ft=0.031250
+bc1t, c.eq.d   out=-0.968750, fs=-1.000000, ft=0.031250
+bc1t, c.eq.s   out=-248539.687500, fs=23.062500, ft=-248562.750000
+bc1t, c.eq.d   out=-248539.687500, fs=23.062500, ft=-248562.750000
+--- BC1FL ---  if fs == ft then out = ft else out = fs + ft
+bc1fl, c.eq.s   out=-4578.500000, fs=0.000000, ft=-4578.500000
+bc1fl, c.eq.d   out=-45786.500000, fs=0.000000, ft=-45786.500000
+bc1fl, c.eq.s   out=456.250000, fs=456.250000, ft=456.250000
+bc1fl, c.eq.d   out=456.250000, fs=456.250000, ft=456.250000
+bc1fl, c.eq.s   out=37.031250, fs=3.000000, ft=34.031250
+bc1fl, c.eq.d   out=37.031250, fs=3.000000, ft=34.031250
+bc1fl, c.eq.s   out=4577.750000, fs=-1.000000, ft=4578.750000
+bc1fl, c.eq.d   out=45785.750000, fs=-1.000000, ft=45786.750000
+bc1fl, c.eq.s   out=1559.500000, fs=1384.500000, ft=175.000000
+bc1fl, c.eq.d   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+bc1fl, c.eq.s   out=99.750000, fs=-7.250000, ft=107.000000
+bc1fl, c.eq.d   out=99.750000, fs=-7.250000, ft=107.000000
+bc1fl, c.eq.s   out=999999552.000000, fs=1000000000.000000, ft=-456.250000
+bc1fl, c.eq.d   out=999954332.750000, fs=1000000000.000000, ft=-45667.250000
+bc1fl, c.eq.s   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+bc1fl, c.eq.d   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+bc1fl, c.eq.s   out=-1726.500000, fs=1752.000000, ft=-3478.500000
+bc1fl, c.eq.d   out=-346104.500000, fs=1752.000000, ft=-347856.500000
+bc1fl, c.eq.s   out=356.515625, fs=0.015625, ft=356.500000
+bc1fl, c.eq.d   out=356047.515625, fs=0.015625, ft=356047.500000
+bc1fl, c.eq.s   out=-0.968750, fs=0.031250, ft=-1.000000
+bc1fl, c.eq.d   out=-0.968750, fs=0.031250, ft=-1.000000
+bc1fl, c.eq.s   out=-248539.687500, fs=-248562.750000, ft=23.062500
+bc1fl, c.eq.d   out=-248539.687500, fs=-248562.750000, ft=23.062500
+bc1fl, c.eq.s   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1fl, c.eq.d   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1fl, c.eq.s   out=912.250000, fs=456.000000, ft=456.250000
+bc1fl, c.eq.d   out=912.250000, fs=456.000000, ft=456.250000
+bc1fl, c.eq.s   out=37.031250, fs=34.031250, ft=3.000000
+bc1fl, c.eq.d   out=37.031250, fs=34.031250, ft=3.000000
+bc1fl, c.eq.s   out=45785.750000, fs=45786.750000, ft=-1.000000
+bc1fl, c.eq.d   out=45785.750000, fs=45786.750000, ft=-1.000000
+bc1fl, c.eq.s   out=1753449.500000, fs=1752065.000000, ft=1384.500000
+bc1fl, c.eq.d   out=1753449.500000, fs=1752065.000000, ft=1384.500000
+bc1fl, c.eq.s   out=100.000000, fs=107.000000, ft=-7.000000
+bc1fl, c.eq.d   out=100.000000, fs=107.000000, ft=-7.000000
+bc1fl, c.eq.s   out=-45567.250000, fs=-45667.250000, ft=100.000000
+bc1fl, c.eq.d   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+bc1fl, c.eq.s   out=-5793.500000, fs=-7.000000, ft=-5786.500000
+bc1fl, c.eq.d   out=-5793.500000, fs=-7.000000, ft=-5786.500000
+bc1fl, c.eq.s   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+bc1fl, c.eq.d   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+bc1fl, c.eq.s   out=356047.500000, fs=356047.500000, ft=0.015625
+bc1fl, c.eq.d   out=356047.515625, fs=356047.500000, ft=0.015625
+bc1fl, c.eq.s   out=-0.968750, fs=-1.000000, ft=0.031250
+bc1fl, c.eq.d   out=-0.968750, fs=-1.000000, ft=0.031250
+bc1fl, c.eq.s   out=-248539.687500, fs=23.062500, ft=-248562.750000
+bc1fl, c.eq.d   out=-248539.687500, fs=23.062500, ft=-248562.750000
+--- BC1TL ---  if fs != ft then out = fs else out = fs + ft
+bc1tl, c.eq.s   out=0.000000, fs=0.000000, ft=-4578.500000
+bc1tl, c.eq.d   out=0.000000, fs=0.000000, ft=-45786.500000
+bc1tl, c.eq.s   out=912.500000, fs=456.250000, ft=456.250000
+bc1tl, c.eq.d   out=912.500000, fs=456.250000, ft=456.250000
+bc1tl, c.eq.s   out=3.000000, fs=3.000000, ft=34.031250
+bc1tl, c.eq.d   out=3.000000, fs=3.000000, ft=34.031250
+bc1tl, c.eq.s   out=-1.000000, fs=-1.000000, ft=4578.750000
+bc1tl, c.eq.d   out=-1.000000, fs=-1.000000, ft=45786.750000
+bc1tl, c.eq.s   out=1384.500000, fs=1384.500000, ft=175.000000
+bc1tl, c.eq.d   out=1384.500000, fs=1384.500000, ft=1752065.000000
+bc1tl, c.eq.s   out=-7.250000, fs=-7.250000, ft=107.000000
+bc1tl, c.eq.d   out=-7.250000, fs=-7.250000, ft=107.000000
+bc1tl, c.eq.s   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+bc1tl, c.eq.d   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+bc1tl, c.eq.s   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+bc1tl, c.eq.d   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+bc1tl, c.eq.s   out=1752.000000, fs=1752.000000, ft=-3478.500000
+bc1tl, c.eq.d   out=1752.000000, fs=1752.000000, ft=-347856.500000
+bc1tl, c.eq.s   out=0.015625, fs=0.015625, ft=356.500000
+bc1tl, c.eq.d   out=0.015625, fs=0.015625, ft=356047.500000
+bc1tl, c.eq.s   out=0.031250, fs=0.031250, ft=-1.000000
+bc1tl, c.eq.d   out=0.031250, fs=0.031250, ft=-1.000000
+bc1tl, c.eq.s   out=-248562.750000, fs=-248562.750000, ft=23.062500
+bc1tl, c.eq.d   out=-248562.750000, fs=-248562.750000, ft=23.062500
+bc1tl, c.eq.s   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1tl, c.eq.d   out=-45786.500000, fs=-45786.500000, ft=0.000000
+bc1tl, c.eq.s   out=456.000000, fs=456.000000, ft=456.250000
+bc1tl, c.eq.d   out=456.000000, fs=456.000000, ft=456.250000
+bc1tl, c.eq.s   out=34.031250, fs=34.031250, ft=3.000000
+bc1tl, c.eq.d   out=34.031250, fs=34.031250, ft=3.000000
+bc1tl, c.eq.s   out=45786.750000, fs=45786.750000, ft=-1.000000
+bc1tl, c.eq.d   out=45786.750000, fs=45786.750000, ft=-1.000000
+bc1tl, c.eq.s   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+bc1tl, c.eq.d   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+bc1tl, c.eq.s   out=107.000000, fs=107.000000, ft=-7.000000
+bc1tl, c.eq.d   out=107.000000, fs=107.000000, ft=-7.000000
+bc1tl, c.eq.s   out=-45667.250000, fs=-45667.250000, ft=100.000000
+bc1tl, c.eq.d   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+bc1tl, c.eq.s   out=-7.000000, fs=-7.000000, ft=-5786.500000
+bc1tl, c.eq.d   out=-7.000000, fs=-7.000000, ft=-5786.500000
+bc1tl, c.eq.s   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+bc1tl, c.eq.d   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+bc1tl, c.eq.s   out=356047.500000, fs=356047.500000, ft=0.015625
+bc1tl, c.eq.d   out=356047.500000, fs=356047.500000, ft=0.015625
+bc1tl, c.eq.s   out=-1.000000, fs=-1.000000, ft=0.031250
+bc1tl, c.eq.d   out=-1.000000, fs=-1.000000, ft=0.031250
+bc1tl, c.eq.s   out=23.062500, fs=23.062500, ft=-248562.750000
+bc1tl, c.eq.d   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.F.S/D ---  if false then out = fs + ft else out = fs
+c.f.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.f.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.f.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.f.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.f.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.f.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.f.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.f.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.f.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.f.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.f.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.f.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.f.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.f.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.f.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.f.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.f.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.f.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.f.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.f.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.f.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.f.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.f.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.f.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.f.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.f.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.f.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.f.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.f.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.f.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.f.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.f.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.f.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.f.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.f.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.f.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.f.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.f.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.f.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.f.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.f.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.f.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.f.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.f.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.f.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.f.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.f.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.f.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.UN.S/D ---  if unordered(fs, ft) then out = fs + ft else out = fs
+c.un.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.un.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.un.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.un.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.un.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.un.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.un.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.un.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.un.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.un.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.un.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.un.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.un.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.un.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.un.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.un.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.un.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.un.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.un.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.un.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.un.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.un.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.un.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.un.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.un.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.un.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.un.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.un.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.un.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.un.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.un.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.un.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.un.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.un.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.un.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.un.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.un.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.un.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.un.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.un.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.un.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.un.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.un.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.un.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.un.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.un.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.un.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.un.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.EQ.S/D ---  if fs == ft then out = fs + ft else out = fs
+c.eq.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.eq.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.eq.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.eq.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.eq.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.eq.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.eq.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.eq.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.eq.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.eq.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.eq.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.eq.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.eq.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.eq.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.eq.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.eq.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.eq.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.eq.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.eq.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.eq.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.eq.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.eq.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.eq.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.eq.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.eq.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.eq.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.eq.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.eq.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.eq.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.eq.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.eq.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.eq.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.eq.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.eq.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.eq.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.eq.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.eq.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.eq.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.eq.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.eq.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.eq.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.eq.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.eq.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.eq.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.eq.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.eq.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.eq.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.eq.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.UEQ.S/D ---  if (unordered(fs, ft) or (fs == ft)) then out = fs + ft else out = fs
+c.ueq.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.ueq.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.ueq.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ueq.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ueq.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.ueq.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.ueq.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.ueq.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.ueq.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.ueq.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.ueq.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.ueq.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.ueq.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.ueq.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.ueq.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.ueq.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.ueq.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.ueq.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.ueq.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.ueq.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.ueq.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ueq.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ueq.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.ueq.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.ueq.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ueq.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ueq.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.ueq.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.ueq.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ueq.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ueq.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ueq.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ueq.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ueq.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ueq.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ueq.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ueq.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.ueq.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.ueq.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ueq.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ueq.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.ueq.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.ueq.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ueq.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ueq.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.ueq.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.ueq.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.ueq.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.OLT.S/D ---  if (ordered(fs, ft) or (fs < ft)) then out = fs + ft else out = fs
+c.olt.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.olt.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.olt.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.olt.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.olt.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.olt.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.olt.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.olt.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.olt.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.olt.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.olt.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.olt.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.olt.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.olt.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.olt.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.olt.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.olt.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.olt.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.olt.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.olt.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.olt.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.olt.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.olt.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.olt.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.olt.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.olt.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.olt.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.olt.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.olt.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.olt.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.olt.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.olt.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.olt.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.olt.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.olt.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.olt.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.olt.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.olt.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.olt.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.olt.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.olt.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.olt.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.olt.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.olt.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.olt.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.olt.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.olt.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.olt.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.ULT.S/D ---  if (unordered(fs, ft) or (fs < ft)) then out = fs + ft else out = fs
+c.ult.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.ult.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.ult.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.ult.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.ult.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ult.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ult.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.ult.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.ult.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.ult.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.ult.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ult.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ult.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.ult.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.ult.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ult.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ult.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.ult.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.ult.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.ult.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.ult.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ult.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ult.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ult.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ult.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ult.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ult.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ult.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ult.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ult.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ult.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ult.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ult.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ult.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ult.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ult.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ult.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.ult.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.ult.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ult.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ult.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ult.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ult.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ult.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ult.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ult.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ult.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.ult.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.OLE.S/D ---  if (ordered(fs, ft) or (fs <= ft)) then out = fs + ft else out = fs
+c.ole.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.ole.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.ole.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ole.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ole.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ole.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ole.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.ole.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.ole.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.ole.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.ole.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ole.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ole.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.ole.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.ole.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ole.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ole.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.ole.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.ole.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.ole.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.ole.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ole.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ole.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ole.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ole.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ole.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ole.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ole.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ole.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ole.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ole.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ole.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ole.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ole.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ole.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ole.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ole.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.ole.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.ole.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ole.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ole.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ole.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ole.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ole.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ole.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ole.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ole.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.ole.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.ULE.S/D ---  if (unordered(fs, ft) or (fs <= ft)) then out = fs + ft else out = fs
+c.ule.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.ule.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.ule.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ule.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ule.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ule.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ule.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.ule.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.ule.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.ule.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.ule.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ule.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ule.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.ule.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.ule.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ule.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ule.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.ule.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.ule.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.ule.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.ule.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ule.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ule.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ule.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ule.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ule.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ule.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ule.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ule.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ule.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ule.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ule.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ule.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ule.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ule.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ule.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ule.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.ule.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.ule.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ule.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ule.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ule.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ule.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ule.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ule.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ule.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ule.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.ule.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.SF.S/D ---  if signaling false then out = fs + ft else out = fs
+c.sf.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.sf.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.sf.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.sf.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.sf.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.sf.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.sf.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.sf.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.sf.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.sf.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.sf.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.sf.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.sf.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.sf.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.sf.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.sf.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.sf.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.sf.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.sf.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.sf.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.sf.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.sf.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.sf.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.sf.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.sf.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.sf.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.sf.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.sf.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.sf.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.sf.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.sf.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.sf.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.sf.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.sf.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.sf.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.sf.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.sf.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.sf.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.sf.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.sf.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.sf.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.sf.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.sf.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.sf.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.sf.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.sf.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.sf.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.sf.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.NGLE.S/D --- if not ((fs > ft) or (fs <= ft)) then out = fs + ft else out = fs
+c.ngle.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.ngle.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.ngle.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.ngle.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.ngle.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.ngle.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.ngle.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.ngle.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.ngle.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.ngle.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.ngle.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.ngle.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.ngle.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.ngle.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.ngle.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.ngle.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.ngle.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.ngle.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.ngle.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.ngle.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.ngle.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ngle.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ngle.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.ngle.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.ngle.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ngle.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ngle.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.ngle.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.ngle.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ngle.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ngle.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ngle.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ngle.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ngle.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ngle.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ngle.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ngle.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.ngle.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.ngle.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ngle.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ngle.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.ngle.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.ngle.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ngle.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ngle.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.ngle.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.ngle.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.ngle.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.SEQ.S/D ---  if signaling equal then out = fs + ft else out = fs
+c.seq.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.seq.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.seq.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.seq.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.seq.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.seq.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.seq.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.seq.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.seq.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.seq.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.seq.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.seq.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.seq.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.seq.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.seq.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.seq.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.seq.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.seq.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.seq.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.seq.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.seq.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.seq.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.seq.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.seq.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.seq.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.seq.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.seq.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.seq.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.seq.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.seq.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.seq.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.seq.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.seq.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.seq.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.seq.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.seq.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.seq.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.seq.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.seq.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.seq.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.seq.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.seq.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.seq.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.seq.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.seq.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.seq.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.seq.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.seq.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.NGL.S/D ---  if not ((fs > ft) or (fs < ft)) then out = fs + ft else out = fs
+c.ngl.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.ngl.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.ngl.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ngl.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ngl.s, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.ngl.d, bc1f   out=3.000000, fs=3.000000, ft=34.031250
+c.ngl.s, bc1f   out=-1.000000, fs=-1.000000, ft=4578.750000
+c.ngl.d, bc1f   out=-1.000000, fs=-1.000000, ft=45786.750000
+c.ngl.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.ngl.d, bc1f   out=1384.500000, fs=1384.500000, ft=1752065.000000
+c.ngl.s, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.ngl.d, bc1f   out=-7.250000, fs=-7.250000, ft=107.000000
+c.ngl.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.ngl.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.ngl.s, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.ngl.d, bc1f   out=-5786.500000, fs=-5786.500000, ft=-7.250000
+c.ngl.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.ngl.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.ngl.s, bc1f   out=0.015625, fs=0.015625, ft=356.500000
+c.ngl.d, bc1f   out=0.015625, fs=0.015625, ft=356047.500000
+c.ngl.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ngl.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ngl.s, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.ngl.d, bc1f   out=-248562.750000, fs=-248562.750000, ft=23.062500
+c.ngl.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ngl.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ngl.s, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.ngl.d, bc1f   out=456.000000, fs=456.000000, ft=456.250000
+c.ngl.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ngl.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ngl.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ngl.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ngl.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ngl.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ngl.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ngl.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ngl.s, bc1f   out=-45667.250000, fs=-45667.250000, ft=100.000000
+c.ngl.d, bc1f   out=-45667.250000, fs=-45667.250000, ft=1000000000.000000
+c.ngl.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ngl.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ngl.s, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.ngl.d, bc1f   out=-347856.500000, fs=-347856.500000, ft=1752.000000
+c.ngl.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ngl.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ngl.s, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.ngl.d, bc1f   out=-1.000000, fs=-1.000000, ft=0.031250
+c.ngl.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.ngl.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.LT.S/D ---  if fs < ft then out = fs + ft else out = fs
+c.lt.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.lt.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.lt.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.lt.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.lt.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.lt.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.lt.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.lt.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.lt.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.lt.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.lt.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.lt.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.lt.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.lt.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.lt.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.lt.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.lt.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.lt.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.lt.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.lt.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.lt.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.lt.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.lt.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.lt.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.lt.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.lt.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.lt.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.lt.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.lt.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.lt.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.lt.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.lt.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.lt.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.lt.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.lt.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.lt.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.lt.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.lt.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.lt.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.lt.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.lt.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.lt.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.lt.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.lt.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.lt.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.lt.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.lt.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.lt.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.NGE.S/D ---  if not (fs >= ft) then out = fs + ft else out = fs
+c.nge.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.nge.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.nge.s, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.nge.d, bc1f   out=456.250000, fs=456.250000, ft=456.250000
+c.nge.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.nge.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.nge.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.nge.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.nge.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.nge.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.nge.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.nge.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.nge.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.nge.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.nge.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.nge.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.nge.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.nge.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.nge.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.nge.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.nge.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.nge.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.nge.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.nge.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.nge.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.nge.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.nge.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.nge.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.nge.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.nge.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.nge.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.nge.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.nge.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.nge.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.nge.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.nge.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.nge.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.nge.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.nge.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.nge.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.nge.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.nge.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.nge.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.nge.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.nge.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.nge.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.nge.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.nge.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.LE.S/D ---  if fs <= ft then out = fs + ft else out = fs
+c.le.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.le.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.le.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.le.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.le.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.le.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.le.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.le.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.le.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.le.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.le.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.le.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.le.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.le.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.le.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.le.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.le.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.le.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.le.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.le.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.le.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.le.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.le.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.le.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.le.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.le.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.le.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.le.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.le.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.le.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.le.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.le.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.le.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.le.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.le.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.le.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.le.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.le.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.le.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.le.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.le.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.le.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.le.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.le.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.le.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.le.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.le.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.le.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+--- C.NGT.S/D ---  if not (fs > ft) then out = fs + ft else out = fs
+c.ngt.s, bc1f   out=0.000000, fs=0.000000, ft=-4578.500000
+c.ngt.d, bc1f   out=0.000000, fs=0.000000, ft=-45786.500000
+c.ngt.s, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ngt.d, bc1f   out=912.500000, fs=456.250000, ft=456.250000
+c.ngt.s, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ngt.d, bc1f   out=37.031250, fs=3.000000, ft=34.031250
+c.ngt.s, bc1f   out=4577.750000, fs=-1.000000, ft=4578.750000
+c.ngt.d, bc1f   out=45785.750000, fs=-1.000000, ft=45786.750000
+c.ngt.s, bc1f   out=1384.500000, fs=1384.500000, ft=175.000000
+c.ngt.d, bc1f   out=1753449.500000, fs=1384.500000, ft=1752065.000000
+c.ngt.s, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ngt.d, bc1f   out=99.750000, fs=-7.250000, ft=107.000000
+c.ngt.s, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-456.250000
+c.ngt.d, bc1f   out=1000000000.000000, fs=1000000000.000000, ft=-45667.250000
+c.ngt.s, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ngt.d, bc1f   out=-5793.750000, fs=-5786.500000, ft=-7.250000
+c.ngt.s, bc1f   out=1752.000000, fs=1752.000000, ft=-3478.500000
+c.ngt.d, bc1f   out=1752.000000, fs=1752.000000, ft=-347856.500000
+c.ngt.s, bc1f   out=356.515625, fs=0.015625, ft=356.500000
+c.ngt.d, bc1f   out=356047.515625, fs=0.015625, ft=356047.500000
+c.ngt.s, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ngt.d, bc1f   out=0.031250, fs=0.031250, ft=-1.000000
+c.ngt.s, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ngt.d, bc1f   out=-248539.687500, fs=-248562.750000, ft=23.062500
+c.ngt.s, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ngt.d, bc1f   out=-45786.500000, fs=-45786.500000, ft=0.000000
+c.ngt.s, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ngt.d, bc1f   out=912.250000, fs=456.000000, ft=456.250000
+c.ngt.s, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ngt.d, bc1f   out=34.031250, fs=34.031250, ft=3.000000
+c.ngt.s, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ngt.d, bc1f   out=45786.750000, fs=45786.750000, ft=-1.000000
+c.ngt.s, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ngt.d, bc1f   out=1752065.000000, fs=1752065.000000, ft=1384.500000
+c.ngt.s, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ngt.d, bc1f   out=107.000000, fs=107.000000, ft=-7.000000
+c.ngt.s, bc1f   out=-45567.250000, fs=-45667.250000, ft=100.000000
+c.ngt.d, bc1f   out=999954332.750000, fs=-45667.250000, ft=1000000000.000000
+c.ngt.s, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ngt.d, bc1f   out=-7.000000, fs=-7.000000, ft=-5786.500000
+c.ngt.s, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ngt.d, bc1f   out=-346104.500000, fs=-347856.500000, ft=1752.000000
+c.ngt.s, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ngt.d, bc1f   out=356047.500000, fs=356047.500000, ft=0.015625
+c.ngt.s, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ngt.d, bc1f   out=-0.968750, fs=-1.000000, ft=0.031250
+c.ngt.s, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
+c.ngt.d, bc1f   out=23.062500, fs=23.062500, ft=-248562.750000
diff --git a/none/tests/mips32/fpu_branches.vgtest b/none/tests/mips32/fpu_branches.vgtest
new file mode 100644
index 0000000..2066512
--- /dev/null
+++ b/none/tests/mips32/fpu_branches.vgtest
@@ -0,0 +1,2 @@
+prog: fpu_branches
+vgopts: -q