Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/lib/libc/arch/m68k/hardfloat Add more softfloat compatible f...



details:   https://anonhg.NetBSD.org/src/rev/1ac7f583c482
branches:  trunk
changeset: 788686:1ac7f583c482
user:      matt <matt%NetBSD.org@localhost>
date:      Thu Jul 18 12:05:30 2013 +0000

description:
Add more softfloat compatible functions

diffstat:

 lib/libc/arch/m68k/hardfloat/ledf2.S    |  55 +++++++++++++++++++++++++++++++++
 lib/libc/arch/m68k/hardfloat/lesf2.S    |  55 +++++++++++++++++++++++++++++++++
 lib/libc/arch/m68k/hardfloat/ltdf2.S    |  55 +++++++++++++++++++++++++++++++++
 lib/libc/arch/m68k/hardfloat/ltsf2.S    |  55 +++++++++++++++++++++++++++++++++
 lib/libc/arch/m68k/hardfloat/nedf2.S    |  55 +++++++++++++++++++++++++++++++++
 lib/libc/arch/m68k/hardfloat/nesf2.S    |  55 +++++++++++++++++++++++++++++++++
 lib/libc/arch/m68k/hardfloat/unorddf2.S |  52 +++++++++++++++++++++++++++++++
 lib/libc/arch/m68k/hardfloat/unordsf2.S |  53 +++++++++++++++++++++++++++++++
 8 files changed, 435 insertions(+), 0 deletions(-)

diffs (truncated from 467 to 300 lines):

diff -r c697a42708b6 -r 1ac7f583c482 lib/libc/arch/m68k/hardfloat/ledf2.S
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/libc/arch/m68k/hardfloat/ledf2.S      Thu Jul 18 12:05:30 2013 +0000
@@ -0,0 +1,55 @@
+/*     $NetBSD: ledf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $   */
+
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * the Systems Programming Group of the University of Utah Computer
+ * Science Department.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <machine/asm.h>
+
+#if defined(LIBC_SCCS) && !defined(lint)
+RCSID("$NetBSD: ledf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $")
+#endif /* LIBC_SCCS and not lint */
+
+STRONG_ALIAS(__gtdf2,__ledf2)
+
+/* libgcc1.c says a > b */
+/* libgcc1.c says 1 - (a <= b) */
+ENTRY(__ledf2)
+       fmoved  4(%sp),%fp0
+       fcmpd   12(%sp),%fp0
+       fbgt    Lbgt
+       movql   #1,%d0
+       rts
+Lbgt:
+       clrl    %d0
+       rts
+END(__ledf2)
diff -r c697a42708b6 -r 1ac7f583c482 lib/libc/arch/m68k/hardfloat/lesf2.S
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/libc/arch/m68k/hardfloat/lesf2.S      Thu Jul 18 12:05:30 2013 +0000
@@ -0,0 +1,55 @@
+/*     $NetBSD: lesf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $   */
+
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * the Systems Programming Group of the University of Utah Computer
+ * Science Department.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <machine/asm.h>
+
+#if defined(LIBC_SCCS) && !defined(lint)
+RCSID("$NetBSD: lesf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $")
+#endif /* LIBC_SCCS and not lint */
+
+STRONG_ALIAS(__gtsf2,__lesf2)
+
+/* libgcc1.c says a > b */
+/* libgcc1.c says 1 - (a <= b) */
+ENTRY(__lesf2)
+       fmoves  4(%sp),%fp0
+       fcmps   8(%sp),%fp0
+       fbgt    Lbgt
+       movql   #1,%d0
+       rts
+Lbgt:
+       clrl    %d0
+       rts
+END(__lesf2)
diff -r c697a42708b6 -r 1ac7f583c482 lib/libc/arch/m68k/hardfloat/ltdf2.S
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/libc/arch/m68k/hardfloat/ltdf2.S      Thu Jul 18 12:05:30 2013 +0000
@@ -0,0 +1,55 @@
+/*     $NetBSD: ltdf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $   */
+
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * the Systems Programming Group of the University of Utah Computer
+ * Science Department.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <machine/asm.h>
+
+#if defined(LIBC_SCCS) && !defined(lint)
+RCSID("$NetBSD: ltdf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $")
+#endif /* LIBC_SCCS and not lint */
+
+STRONG_ALIAS(__gedf2,__ltdf2)
+
+/* libgcc1.c says (a >= b) - 1 */
+/* libgcc1.c says -(a < b) */
+ENTRY(__ltdf2)
+       fmoved  4(%sp),%fp0
+       fcmpd   12(%sp),%fp0
+       fbge    Lbge
+       movql   #-1,%d0
+       rts
+Lbge:
+       clrl    %d0
+       rts
+END(__ltdf2)
diff -r c697a42708b6 -r 1ac7f583c482 lib/libc/arch/m68k/hardfloat/ltsf2.S
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/libc/arch/m68k/hardfloat/ltsf2.S      Thu Jul 18 12:05:30 2013 +0000
@@ -0,0 +1,55 @@
+/*     $NetBSD: ltsf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $   */
+
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * the Systems Programming Group of the University of Utah Computer
+ * Science Department.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <machine/asm.h>
+
+#if defined(LIBC_SCCS) && !defined(lint)
+RCSID("$NetBSD: ltsf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $")
+#endif /* LIBC_SCCS and not lint */
+
+STRONG_ALIAS(__gesf2,__ltsf2)
+
+/* libgcc1.c says (a >= b) - 1 */
+/* libgcc1.c says -(a < b) */
+ENTRY(__ltsf2)
+       fmoves  4(%sp),%fp0
+       fcmps   8(%sp),%fp0
+       fbge    Lbge
+       movql   #-1,%d0
+       rts
+Lbge:
+       clrl    %d0
+       rts
+END(__ltsf2)
diff -r c697a42708b6 -r 1ac7f583c482 lib/libc/arch/m68k/hardfloat/nedf2.S
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/libc/arch/m68k/hardfloat/nedf2.S      Thu Jul 18 12:05:30 2013 +0000
@@ -0,0 +1,55 @@
+/*     $NetBSD: nedf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $   */
+
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * the Systems Programming Group of the University of Utah Computer
+ * Science Department.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <machine/asm.h>
+
+#if defined(LIBC_SCCS) && !defined(lint)
+RCSID("$NetBSD: nedf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $")
+#endif /* LIBC_SCCS and not lint */
+
+STRONG_ALIAS(__eqdf2,__nedf2)
+
+/* single != single: 1 */
+/* single == single: 0 */
+ENTRY(__nedf2)
+       fmoved  4(%sp),%fp0
+       fcmpd   12(%sp),%fp0
+       fbeq    Lbeq
+       movql   #1,%d0
+       rts
+Lbeq:
+       clrl    %d0
+       rts
+END(__nedf2)
diff -r c697a42708b6 -r 1ac7f583c482 lib/libc/arch/m68k/hardfloat/nesf2.S
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/libc/arch/m68k/hardfloat/nesf2.S      Thu Jul 18 12:05:30 2013 +0000
@@ -0,0 +1,55 @@
+/*     $NetBSD: nesf2.S,v 1.1 2013/07/18 12:05:30 matt Exp $   */



Home | Main Index | Thread Index | Old Index