CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: dholland Date: Sun Jan 27 02:42:32 UTC 2019 Modified Files: src/lib/libc/arch/m68k/gen: fabs.S Log Message: fix another mergeo To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/lib/libc/arch/m68k/gen/fabs.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/fabs.S diff -u src/lib/libc/arch/m68k/gen/fabs.S:1.13 src/lib/libc/arch/m68k/gen/fabs.S:1.14 --- src/lib/libc/arch/m68k/gen/fabs.S:1.13 Sun Jan 27 02:08:35 2019 +++ src/lib/libc/arch/m68k/gen/fabs.S Sun Jan 27 02:42:32 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: fabs.S,v 1.13 2019/01/27 02:08:35 pgoyette Exp $ */ +/* $NetBSD: fabs.S,v 1.14 2019/01/27 02:42:32 dholland Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -32,11 +32,7 @@ #include #include -RCSID("$NetBSD: fabs.S,v 1.13 2019/01/27 02:08:35 pgoyette Exp $") - -#ifndef __HAVE_LONG_DOUBLE -STRONG_ALIAS(fabsl, fabs) -#endif +RCSID("$NetBSD: fabs.S,v 1.14 2019/01/27 02:42:32 dholland Exp $") #ifndef __HAVE_LONG_DOUBLE STRONG_ALIAS(fabsl, fabs)
CVS commit: src/lib/libc/arch/m68k/softfloat
Module Name:src Committed By: matt Date: Mon Sep 1 07:33:31 UTC 2014 Modified Files: src/lib/libc/arch/m68k/softfloat: softfloat.h Log Message: float32_is_signalling_nan needs a prototype if SOFTFLOATM68K_FOR_GCC is defined. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/lib/libc/arch/m68k/softfloat/softfloat.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/softfloat/softfloat.h diff -u src/lib/libc/arch/m68k/softfloat/softfloat.h:1.6 src/lib/libc/arch/m68k/softfloat/softfloat.h:1.7 --- src/lib/libc/arch/m68k/softfloat/softfloat.h:1.6 Tue Mar 18 18:20:37 2014 +++ src/lib/libc/arch/m68k/softfloat/softfloat.h Mon Sep 1 07:33:31 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: softfloat.h,v 1.6 2014/03/18 18:20:37 riastradh Exp $ */ +/* $NetBSD: softfloat.h,v 1.7 2014/09/01 07:33:31 matt Exp $ */ /* This is a derivative work. */ @@ -176,7 +176,7 @@ flag float32_lt( float32, float32 ); flag float32_eq_signaling( float32, float32 ); flag float32_le_quiet( float32, float32 ); flag float32_lt_quiet( float32, float32 ); -#ifndef SOFTFLOAT_FOR_GCC +#if !defined(SOFTFLOAT_FOR_GCC) || defined(SOFTFLOATM68K_FOR_GCC) flag float32_is_signaling_nan( float32 ); #endif
CVS commit: src/lib/libc/arch/m68k
Module Name:src Committed By: matt Date: Tue Mar 4 06:30:40 UTC 2014 Modified Files: src/lib/libc/arch/m68k: Makefile.inc Log Message: The fixuns* come from compiler_rt so softfloat doesn't need to provide them. To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.17 src/lib/libc/arch/m68k/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/Makefile.inc diff -u src/lib/libc/arch/m68k/Makefile.inc:1.16 src/lib/libc/arch/m68k/Makefile.inc:1.17 --- src/lib/libc/arch/m68k/Makefile.inc:1.16 Thu Jul 18 21:31:22 2013 +++ src/lib/libc/arch/m68k/Makefile.inc Tue Mar 4 06:30:40 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.16 2013/07/18 21:31:22 matt Exp $ +# $NetBSD: Makefile.inc,v 1.17 2014/03/04 06:30:40 matt Exp $ SRCS+= __sigaction14_sigtramp.c __sigtramp2.S __m68k_read_tp.S __mmap.S @@ -7,7 +7,8 @@ ASM+= _lwp_getprivate.S mremap.S CPPFLAGS+= -I. # for assym.h .if ${MKSOFTFLOAT} != no -CPPFLAGS+= -DSOFTFLOAT_NEED_FIXUNS -DSOFTFLOAT -DSOFTFLOATM68K_FOR_GCC +#CPPFLAGS+= -DSOFTFLOAT_NEED_FIXUNS +CPPFLAGS+= -DSOFTFLOAT -DSOFTFLOATM68K_FOR_GCC . include softfloat/Makefile.inc .elif ${MACHINE_ARCH} != m68000 .PATH : ${ARCHDIR}/hardfloat
CVS commit: src/lib/libc/arch/m68k
Module Name:src Committed By: matt Date: Wed Jul 24 15:38:07 UTC 2013 Modified Files: src/lib/libc/arch/m68k: SYS.h src/lib/libc/arch/m68k/sys: brk.S ptrace.S sbrk.S syscall.S Log Message: Only jump to CERROR if carry is set, not clear. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/lib/libc/arch/m68k/SYS.h cvs rdiff -u -r1.17 -r1.18 src/lib/libc/arch/m68k/sys/brk.S cvs rdiff -u -r1.13 -r1.14 src/lib/libc/arch/m68k/sys/ptrace.S cvs rdiff -u -r1.16 -r1.17 src/lib/libc/arch/m68k/sys/sbrk.S cvs rdiff -u -r1.8 -r1.9 src/lib/libc/arch/m68k/sys/syscall.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/SYS.h diff -u src/lib/libc/arch/m68k/SYS.h:1.17 src/lib/libc/arch/m68k/SYS.h:1.18 --- src/lib/libc/arch/m68k/SYS.h:1.17 Tue Jul 16 22:18:14 2013 +++ src/lib/libc/arch/m68k/SYS.h Wed Jul 24 15:38:07 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: SYS.h,v 1.17 2013/07/16 22:18:14 matt Exp $ */ +/* $NetBSD: SYS.h,v 1.18 2013/07/24 15:38:07 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -53,7 +53,7 @@ #define _SYSCALL(x,y) \ _SYSCALL_NOERROR(x,y); \ - jcc CERROR + jcs CERROR #define SYSCALL_NOERROR(x) \ _SYSCALL_NOERROR(x,x) Index: src/lib/libc/arch/m68k/sys/brk.S diff -u src/lib/libc/arch/m68k/sys/brk.S:1.17 src/lib/libc/arch/m68k/sys/brk.S:1.18 --- src/lib/libc/arch/m68k/sys/brk.S:1.17 Tue Jul 16 23:00:15 2013 +++ src/lib/libc/arch/m68k/sys/brk.S Wed Jul 24 15:38:07 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: brk.S,v 1.17 2013/07/16 23:00:15 matt Exp $ */ +/* $NetBSD: brk.S,v 1.18 2013/07/24 15:38:07 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)brk.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: brk.S,v 1.17 2013/07/16 23:00:15 matt Exp $) + RCSID($NetBSD: brk.S,v 1.18 2013/07/24 15:38:07 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -71,7 +71,7 @@ ENTRY(_brk) movl %a1,4(%sp) ok: SYSTRAP(break) - jcc CERROR + jcs CERROR #ifdef PIC LEA_LCL(_C_LABEL(__curbrk),%a0) movl %a1,(%a0) Index: src/lib/libc/arch/m68k/sys/ptrace.S diff -u src/lib/libc/arch/m68k/sys/ptrace.S:1.13 src/lib/libc/arch/m68k/sys/ptrace.S:1.14 --- src/lib/libc/arch/m68k/sys/ptrace.S:1.13 Tue Jul 16 23:00:15 2013 +++ src/lib/libc/arch/m68k/sys/ptrace.S Wed Jul 24 15:38:07 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.S,v 1.13 2013/07/16 23:00:15 matt Exp $ */ +/* $NetBSD: ptrace.S,v 1.14 2013/07/24 15:38:07 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)ptrace.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: ptrace.S,v 1.13 2013/07/16 23:00:15 matt Exp $) + RCSID($NetBSD: ptrace.S,v 1.14 2013/07/24 15:38:07 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -66,6 +66,6 @@ ENTRY(ptrace) #endif /* PIC */ #endif /* _REENTRANT */ SYSTRAP(ptrace) - jcc CERROR + jcs CERROR rts END(ptrace) Index: src/lib/libc/arch/m68k/sys/sbrk.S diff -u src/lib/libc/arch/m68k/sys/sbrk.S:1.16 src/lib/libc/arch/m68k/sys/sbrk.S:1.17 --- src/lib/libc/arch/m68k/sys/sbrk.S:1.16 Tue Jul 16 23:00:15 2013 +++ src/lib/libc/arch/m68k/sys/sbrk.S Wed Jul 24 15:38:07 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: sbrk.S,v 1.16 2013/07/16 23:00:15 matt Exp $ */ +/* $NetBSD: sbrk.S,v 1.17 2013/07/24 15:38:07 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)sbrk.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: sbrk.S,v 1.16 2013/07/16 23:00:15 matt Exp $) + RCSID($NetBSD: sbrk.S,v 1.17 2013/07/24 15:38:07 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -62,7 +62,7 @@ ENTRY(_sbrk) movl (%a1),%d0 addl %d0,4(%sp) SYSTRAP(break) - jcc CERROR + jcs CERROR movl (%a1),%d0 movl 4(%sp),(%a1) #ifdef __SVR4_ABI__ Index: src/lib/libc/arch/m68k/sys/syscall.S diff -u src/lib/libc/arch/m68k/sys/syscall.S:1.8 src/lib/libc/arch/m68k/sys/syscall.S:1.9 --- src/lib/libc/arch/m68k/sys/syscall.S:1.8 Tue Jul 16 22:20:35 2013 +++ src/lib/libc/arch/m68k/sys/syscall.S Wed Jul 24 15:38:07 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: syscall.S,v 1.8 2013/07/16 22:20:35 matt Exp $ */ +/* $NetBSD: syscall.S,v 1.9 2013/07/24 15:38:07 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,13 +39,13 @@ #if 0 RCSID(from: @(#)syscall.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: syscall.S,v 1.8 2013/07/16 22:20:35 matt Exp $) + RCSID($NetBSD: syscall.S,v 1.9 2013/07/24 15:38:07 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ ENTRY(syscall) clrl %d0 trap #0 - jcc CERROR + jcs CERROR rts END(syscall)
CVS commit: src/lib/libc/arch/m68k/hardfloat
Module Name:src Committed By: matt Date: Fri Jul 19 22:32:04 UTC 2013 Modified Files: src/lib/libc/arch/m68k/hardfloat: floatunsisf.S Log Message: Don't use the fs* variants, just use the f* ones. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/lib/libc/arch/m68k/hardfloat/floatunsisf.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/hardfloat/floatunsisf.S diff -u src/lib/libc/arch/m68k/hardfloat/floatunsisf.S:1.1 src/lib/libc/arch/m68k/hardfloat/floatunsisf.S:1.2 --- src/lib/libc/arch/m68k/hardfloat/floatunsisf.S:1.1 Thu Jul 18 21:25:11 2013 +++ src/lib/libc/arch/m68k/hardfloat/floatunsisf.S Fri Jul 19 22:32:04 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: floatunsisf.S,v 1.1 2013/07/18 21:25:11 matt Exp $ */ +/* $NetBSD: floatunsisf.S,v 1.2 2013/07/19 22:32:04 matt Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -32,7 +32,7 @@ #include machine/asm.h #if defined(LIBC_SCCS) !defined(lint) -RCSID($NetBSD: floatunsisf.S,v 1.1 2013/07/18 21:25:11 matt Exp $) +RCSID($NetBSD: floatunsisf.S,v 1.2 2013/07/19 22:32:04 matt Exp $) #endif /* LIBC_SCCS and not lint */ #ifdef __mcoldfire__ @@ -45,19 +45,19 @@ L2G: .double 0r2147483648.0 ENTRY(__floatunsisf) movl 4(%sp),%d0 jpl 1f - fsmovel %d0,%fp0 + fmovel %d0,%fp0 #ifndef __SVR4_ABI__ fmoves %fp0,%d0 #endif rts 1: bclr #31,%d0 - fsmovel %d0,%fp0 + fmovel %d0,%fp0 #ifdef __mcoldfire__ LEA_LCL(L2G,%a0) - fsaddd (%a0),%fp0 + faddd (%a0),%fp0 #else - fsaddd #0r2147483648.0,%fp0 + faddd #0r2147483648.0,%fp0 #endif #ifndef __SVR4_ABI__ fmoves %fp0,%d0
CVS commit: src/lib/libc/arch/m68k/hardfloat
Module Name:src Committed By: matt Date: Thu Jul 18 12:05:30 UTC 2013 Added Files: src/lib/libc/arch/m68k/hardfloat: ledf2.S lesf2.S ltdf2.S ltsf2.S nedf2.S nesf2.S unorddf2.S unordsf2.S Log Message: Add more softfloat compatible functions To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/lib/libc/arch/m68k/hardfloat/ledf2.S \ src/lib/libc/arch/m68k/hardfloat/lesf2.S \ src/lib/libc/arch/m68k/hardfloat/ltdf2.S \ src/lib/libc/arch/m68k/hardfloat/ltsf2.S \ src/lib/libc/arch/m68k/hardfloat/nedf2.S \ src/lib/libc/arch/m68k/hardfloat/nesf2.S \ src/lib/libc/arch/m68k/hardfloat/unorddf2.S \ src/lib/libc/arch/m68k/hardfloat/unordsf2.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/lib/libc/arch/m68k/hardfloat/ledf2.S diff -u /dev/null src/lib/libc/arch/m68k/hardfloat/ledf2.S:1.1 --- /dev/null Thu Jul 18 12:05:30 2013 +++ src/lib/libc/arch/m68k/hardfloat/ledf2.S Thu Jul 18 12:05:30 2013 @@ -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) Index: src/lib/libc/arch/m68k/hardfloat/lesf2.S diff -u /dev/null src/lib/libc/arch/m68k/hardfloat/lesf2.S:1.1 --- /dev/null Thu Jul 18 12:05:30 2013 +++ src/lib/libc/arch/m68k/hardfloat/lesf2.S Thu Jul 18 12:05:30 2013 @@ -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
CVS commit: src/lib/libc/arch/m68k/quad
Module Name:src Committed By: matt Date: Thu Jul 18 21:18:36 UTC 2013 Modified Files: src/lib/libc/arch/m68k/quad: ashldi3.S ashrdi3.S lshrdi3.S Log Message: Use stack adjustment in the lnk instruction to adjust the stack. Saves one word on the following moveml To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/lib/libc/arch/m68k/quad/ashldi3.S \ src/lib/libc/arch/m68k/quad/ashrdi3.S cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/quad/lshrdi3.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/quad/ashldi3.S diff -u src/lib/libc/arch/m68k/quad/ashldi3.S:1.6 src/lib/libc/arch/m68k/quad/ashldi3.S:1.7 --- src/lib/libc/arch/m68k/quad/ashldi3.S:1.6 Tue Jul 16 21:49:45 2013 +++ src/lib/libc/arch/m68k/quad/ashldi3.S Thu Jul 18 21:18:36 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: ashldi3.S,v 1.6 2013/07/16 21:49:45 matt Exp $ */ +/* $NetBSD: ashldi3.S,v 1.7 2013/07/18 21:18:36 matt Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -37,8 +37,8 @@ | d3 offset (32 - shift) ENTRY(__ashldi3) - link %fp,#0 - moveml %d2-%d4,-(%sp) + link %fp,#-12 + moveml %d2-%d4,(%sp) movel 8(%fp),%d0 movel 12(%fp),%d1 movel 16(%fp),%d2 Index: src/lib/libc/arch/m68k/quad/ashrdi3.S diff -u src/lib/libc/arch/m68k/quad/ashrdi3.S:1.6 src/lib/libc/arch/m68k/quad/ashrdi3.S:1.7 --- src/lib/libc/arch/m68k/quad/ashrdi3.S:1.6 Tue Jul 16 21:49:45 2013 +++ src/lib/libc/arch/m68k/quad/ashrdi3.S Thu Jul 18 21:18:36 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: ashrdi3.S,v 1.6 2013/07/16 21:49:45 matt Exp $ */ +/* $NetBSD: ashrdi3.S,v 1.7 2013/07/18 21:18:36 matt Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -37,8 +37,8 @@ | d3 offset (32 - shift) ENTRY(__ashrdi3) - link %fp,#0 - moveml %d2-%d4,-(%sp) + link %fp,#-12 + moveml %d2-%d4,(%sp) movel 8(%fp),%d0 movel 12(%fp),%d1 movel 16(%fp),%d2 Index: src/lib/libc/arch/m68k/quad/lshrdi3.S diff -u src/lib/libc/arch/m68k/quad/lshrdi3.S:1.7 src/lib/libc/arch/m68k/quad/lshrdi3.S:1.8 --- src/lib/libc/arch/m68k/quad/lshrdi3.S:1.7 Tue Jul 16 21:49:45 2013 +++ src/lib/libc/arch/m68k/quad/lshrdi3.S Thu Jul 18 21:18:36 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: lshrdi3.S,v 1.7 2013/07/16 21:49:45 matt Exp $ */ +/* $NetBSD: lshrdi3.S,v 1.8 2013/07/18 21:18:36 matt Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -37,8 +37,8 @@ | d3 offset (32 - shift) ENTRY(__lshrdi3) - link %fp,#0 - moveml %d2-%d4,-(%sp) + link %fp,#-12 + moveml %d2-%d4,(%sp) movel 8(%fp),%d0 movel 12(%fp),%d1 movel 16(%fp),%d2
CVS commit: src/lib/libc/arch/m68k/gdtoa
Module Name:src Committed By: matt Date: Thu Jul 18 21:19:50 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gdtoa: Makefile.inc Log Message: ${MACHINE_ARCH} != m68000 -- ${MACHINE_ARCH} == m68k To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/lib/libc/arch/m68k/gdtoa/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gdtoa/Makefile.inc diff -u src/lib/libc/arch/m68k/gdtoa/Makefile.inc:1.3 src/lib/libc/arch/m68k/gdtoa/Makefile.inc:1.4 --- src/lib/libc/arch/m68k/gdtoa/Makefile.inc:1.3 Tue Mar 21 22:50:13 2006 +++ src/lib/libc/arch/m68k/gdtoa/Makefile.inc Thu Jul 18 21:19:50 2013 @@ -1,8 +1,8 @@ -# $NetBSD: Makefile.inc,v 1.3 2006/03/21 22:50:13 he Exp $ +# $NetBSD: Makefile.inc,v 1.4 2013/07/18 21:19:50 matt Exp $ SRCS+= strtof.c -.if ${MACHINE_ARCH} != m68000 +.if ${MACHINE_ARCH} == m68k SRCS+= strtold_pxL.c SRCS+= strtopxL.c .endif
CVS commit: src/lib/libc/arch/m68k/hardfloat
Module Name:src Committed By: matt Date: Thu Jul 18 21:25:11 UTC 2013 Added Files: src/lib/libc/arch/m68k/hardfloat: fixunssfsi.S floatunsidf.S floatunsisf.S Log Message: Add for softfloat compatibility To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/lib/libc/arch/m68k/hardfloat/fixunssfsi.S \ src/lib/libc/arch/m68k/hardfloat/floatunsidf.S \ src/lib/libc/arch/m68k/hardfloat/floatunsisf.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/lib/libc/arch/m68k/hardfloat/fixunssfsi.S diff -u /dev/null src/lib/libc/arch/m68k/hardfloat/fixunssfsi.S:1.1 --- /dev/null Thu Jul 18 21:25:11 2013 +++ src/lib/libc/arch/m68k/hardfloat/fixunssfsi.S Thu Jul 18 21:25:11 2013 @@ -0,0 +1,75 @@ +/* $NetBSD: fixunssfsi.S,v 1.1 2013/07/18 21:25:11 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) +#if 0 + RCSID(from: @(#)fixunssfsi.s 5.1 (Berkeley) 6/7/90) +#else + RCSID($NetBSD: fixunssfsi.S,v 1.1 2013/07/18 21:25:11 matt Exp $) +#endif +#endif /* LIBC_SCCS and not lint */ + +#ifdef __mcoldfire__ + .section .rodata,a + .p2align 4 +L2G: .double 0r2147483648.0 +#endif + +/* single - unsigned */ +ENTRY(__fixunssfsi) + fintrzs 4(%sp),%fp0 +#ifdef __mcoldfire__ + LEA_LCL(L2G,%a0) + fmoved (%a0),%fp1 + fcmpd %fp1,%fp0 +#else + fmoved #0r2147483648.0,%fp1 + fcmpx %fp1,%fp0 +#endif + fbge Lwaybig + fmovel %fp0,%d0 + rts +Lwaybig: +#ifdef __mcoldfire__ + fsubd %fp1,%fp0 +#else + fsubx %fp1,%fp0 +#endif + fmovel %fp0,%d0 + bset #31,%d0 + rts +END(__fixunssfsi) Index: src/lib/libc/arch/m68k/hardfloat/floatunsidf.S diff -u /dev/null src/lib/libc/arch/m68k/hardfloat/floatunsidf.S:1.1 --- /dev/null Thu Jul 18 21:25:11 2013 +++ src/lib/libc/arch/m68k/hardfloat/floatunsidf.S Thu Jul 18 21:25:11 2013 @@ -0,0 +1,70 @@ +/* $NetBSD: floatunsidf.S,v 1.1 2013/07/18 21:25:11 matt Exp $ */ + +/*- + * Copyright (c) 2013 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Matt Thomas of 3am Software Foundry. + * + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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;
CVS commit: src/lib/libc/arch/m68k/hardfloat
Module Name:src Committed By: matt Date: Thu Jul 18 21:29:31 UTC 2013 Added Files: src/lib/libc/arch/m68k/hardfloat: Makefile.inc Log Message: Add the Makefile To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/lib/libc/arch/m68k/hardfloat/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/lib/libc/arch/m68k/hardfloat/Makefile.inc diff -u /dev/null src/lib/libc/arch/m68k/hardfloat/Makefile.inc:1.1 --- /dev/null Thu Jul 18 21:29:31 2013 +++ src/lib/libc/arch/m68k/hardfloat/Makefile.inc Thu Jul 18 21:29:31 2013 @@ -0,0 +1,16 @@ +# $NetBSD: Makefile.inc,v 1.1 2013/07/18 21:29:31 matt Exp $ + +SRCS+= modf.S +SRCS+= flt_rounds.c fpgetmask.c fpgetround.c fpgetsticky.c fpsetmask.c \ + fpsetround.c fpsetsticky.c +# +# These allow softfloat programs to use the FPU. +# +SRCS+= adddf3.S addsf3.S cmpdf2.S cmpsf2.S divdf3.S divsf3.S \ + extendsfdf2.S fixdfsi.S fixunsdfsi.S fixunssfsi.S floatsidf.S \ + muldf3.S mulsf3.S subdf3.S subsf3.S truncdfsf2.S + +SRCS+= floatunsidf.S floatunsisf.S + +SRCS+= lesf2.S ltsf2.S nesf2.S unordsf2.S +SRCS+= ledf2.S ltdf2.S nedf2.S unorddf2.S
CVS commit: src/lib/libc/arch/m68k/hardfloat
Module Name:src Committed By: matt Date: Thu Jul 18 21:29:08 UTC 2013 Modified Files: src/lib/libc/arch/m68k/hardfloat: cmpdf2.S cmpsf2.S fixunsdfsi.S modf.S Log Message: Update to compile on coldfire. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/lib/libc/arch/m68k/hardfloat/cmpdf2.S \ src/lib/libc/arch/m68k/hardfloat/cmpsf2.S \ src/lib/libc/arch/m68k/hardfloat/fixunsdfsi.S \ src/lib/libc/arch/m68k/hardfloat/modf.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/hardfloat/cmpdf2.S diff -u src/lib/libc/arch/m68k/hardfloat/cmpdf2.S:1.1 src/lib/libc/arch/m68k/hardfloat/cmpdf2.S:1.2 --- src/lib/libc/arch/m68k/hardfloat/cmpdf2.S:1.1 Wed Jul 17 06:39:06 2013 +++ src/lib/libc/arch/m68k/hardfloat/cmpdf2.S Thu Jul 18 21:29:08 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: cmpdf2.S,v 1.1 2013/07/17 06:39:06 matt Exp $ */ +/* $NetBSD: cmpdf2.S,v 1.2 2013/07/18 21:29:08 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)cmpdf2.s 5.1 (Berkeley) 6/7/90) #else - RCSID($NetBSD: cmpdf2.S,v 1.1 2013/07/17 06:39:06 matt Exp $) + RCSID($NetBSD: cmpdf2.S,v 1.2 2013/07/18 21:29:08 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -49,11 +49,21 @@ ENTRY(__cmpdf2) fmoved 4(%sp),%fp0 fcmpd 12(%sp),%fp0 - fbgt Lagtb + fbgt Lbgt +#ifdef __mcoldfire__ + fbeq Lbeq + movql #-1,%d0 +#else fslt %d0 extbl %d0 +#endif rts -Lagtb: +Lbgt: moveq #1,%d0 rts +#ifdef __mcoldfire__ +Lbeq: + clrl %d0 + rts +#endif END(__cmpdf2) Index: src/lib/libc/arch/m68k/hardfloat/cmpsf2.S diff -u src/lib/libc/arch/m68k/hardfloat/cmpsf2.S:1.1 src/lib/libc/arch/m68k/hardfloat/cmpsf2.S:1.2 --- src/lib/libc/arch/m68k/hardfloat/cmpsf2.S:1.1 Wed Jul 17 06:39:06 2013 +++ src/lib/libc/arch/m68k/hardfloat/cmpsf2.S Thu Jul 18 21:29:08 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: cmpsf2.S,v 1.1 2013/07/17 06:39:06 matt Exp $ */ +/* $NetBSD: cmpsf2.S,v 1.2 2013/07/18 21:29:08 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)cmpsf2.s 5.1 (Berkeley) 6/7/90) #else - RCSID($NetBSD: cmpsf2.S,v 1.1 2013/07/17 06:39:06 matt Exp $) + RCSID($NetBSD: cmpsf2.S,v 1.2 2013/07/18 21:29:08 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -49,11 +49,21 @@ ENTRY(__cmpsf2) fmoves 4(%sp),%fp0 fcmps 8(%sp),%fp0 - fbgt Lagtb + fbgt Lbgt +#ifdef __mcoldfire__ + fbeq Lbeq + movql #-1,%d0 +#else fslt %d0 extbl %d0 +#endif rts -Lagtb: +Lbgt: moveq #1,%d0 rts +#ifdef __mcoldfire__ +Lbeq: + clrl %d0 + rts +#endif END(__cmpsf2) Index: src/lib/libc/arch/m68k/hardfloat/fixunsdfsi.S diff -u src/lib/libc/arch/m68k/hardfloat/fixunsdfsi.S:1.1 src/lib/libc/arch/m68k/hardfloat/fixunsdfsi.S:1.2 --- src/lib/libc/arch/m68k/hardfloat/fixunsdfsi.S:1.1 Wed Jul 17 06:39:06 2013 +++ src/lib/libc/arch/m68k/hardfloat/fixunsdfsi.S Thu Jul 18 21:29:08 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: fixunsdfsi.S,v 1.1 2013/07/17 06:39:06 matt Exp $ */ +/* $NetBSD: fixunsdfsi.S,v 1.2 2013/07/18 21:29:08 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,19 +39,36 @@ #if 0 RCSID(from: @(#)fixunsdfsi.s 5.1 (Berkeley) 6/7/90) #else - RCSID($NetBSD: fixunsdfsi.S,v 1.1 2013/07/17 06:39:06 matt Exp $) + RCSID($NetBSD: fixunsdfsi.S,v 1.2 2013/07/18 21:29:08 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ +#ifdef __mcoldfire__ + .section .rodata,a + .p2align 4 +L2G: .double 0r2147483648.0 +#endif + /* (unsigned) double */ ENTRY(__fixunsdfsi) fintrzd 4(%sp),%fp0 - fcmpd #0r2147483648.0,%fp0 +#ifdef __mcoldfire__ + LEA_LCL(L2G,%a0) + fmoved (%a0),%fp1 + fcmpd %fp1,%fp0 +#else + fmoved #0r2147483648.0,%fp1 + fcmpx %fp1,%fp0 +#endif fbge Lwaybig fmovel %fp0,%d0 rts Lwaybig: - fsubd #0r2147483648.0,%fp0 +#ifdef __mcoldfire__ + fsubd %fp1,%fp0 +#else + fsubx %fp1,%fp0 +#endif fmovel %fp0,%d0 bset #31,%d0 rts Index: src/lib/libc/arch/m68k/hardfloat/modf.S diff -u src/lib/libc/arch/m68k/hardfloat/modf.S:1.1 src/lib/libc/arch/m68k/hardfloat/modf.S:1.2 --- src/lib/libc/arch/m68k/hardfloat/modf.S:1.1 Wed Jul 17 06:39:06 2013 +++ src/lib/libc/arch/m68k/hardfloat/modf.S Thu Jul 18 21:29:08 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: modf.S,v 1.1 2013/07/17 06:39:06 matt Exp $ */ +/* $NetBSD: modf.S,v 1.2 2013/07/18 21:29:08 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)modf.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: modf.S,v 1.1 2013/07/17 06:39:06 matt Exp $) + RCSID($NetBSD: modf.S,v 1.2 2013/07/18 21:29:08 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -50,9 +50,17 @@ ENTRY(modf) fmoved 4(%sp),%fp0 movel 12(%sp),%a0 +#ifdef __mcoldfire__ + fintrzd %fp0,%fp1 +#else fintrzx %fp0,%fp1 +#endif fmoved %fp1,(%a0)
CVS commit: src/lib/libc/arch/m68k/softfloat
Module Name:src Committed By: matt Date: Thu Jul 18 21:30:40 UTC 2013 Modified Files: src/lib/libc/arch/m68k/softfloat: softfloat.h Log Message: Coldfire doesn't do FLOATX80 To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/lib/libc/arch/m68k/softfloat/softfloat.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/softfloat/softfloat.h diff -u src/lib/libc/arch/m68k/softfloat/softfloat.h:1.4 src/lib/libc/arch/m68k/softfloat/softfloat.h:1.5 --- src/lib/libc/arch/m68k/softfloat/softfloat.h:1.4 Thu Jul 7 07:14:57 2011 +++ src/lib/libc/arch/m68k/softfloat/softfloat.h Thu Jul 18 21:30:40 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: softfloat.h,v 1.4 2011/07/07 07:14:57 matt Exp $ */ +/* $NetBSD: softfloat.h,v 1.5 2013/07/18 21:30:40 matt Exp $ */ /* This is a derivative work. */ @@ -41,7 +41,9 @@ input or output the `floatx80' type will the `FLOAT128' macro and the quadruple-precision format `float128'. --- */ +#ifndef __mcoldfire__ #define FLOATX80 +#endif /* #define FLOAT128 */ #include machine/ieeefp.h
CVS commit: src/lib/libc/arch/m68k
Module Name:src Committed By: matt Date: Thu Jul 18 21:31:22 UTC 2013 Modified Files: src/lib/libc/arch/m68k: Makefile.inc Log Message: Move hardfloat support to its own directory To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/lib/libc/arch/m68k/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/Makefile.inc diff -u src/lib/libc/arch/m68k/Makefile.inc:1.15 src/lib/libc/arch/m68k/Makefile.inc:1.16 --- src/lib/libc/arch/m68k/Makefile.inc:1.15 Wed Jul 17 01:41:17 2013 +++ src/lib/libc/arch/m68k/Makefile.inc Thu Jul 18 21:31:22 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.15 2013/07/17 01:41:17 matt Exp $ +# $NetBSD: Makefile.inc,v 1.16 2013/07/18 21:31:22 matt Exp $ SRCS+= __sigaction14_sigtramp.c __sigtramp2.S __m68k_read_tp.S __mmap.S @@ -9,4 +9,7 @@ CPPFLAGS+= -I. # for assym.h .if ${MKSOFTFLOAT} != no CPPFLAGS+= -DSOFTFLOAT_NEED_FIXUNS -DSOFTFLOAT -DSOFTFLOATM68K_FOR_GCC . include softfloat/Makefile.inc +.elif ${MACHINE_ARCH} != m68000 +.PATH : ${ARCHDIR}/hardfloat +. include ${ARCHDIR}/hardfloat/Makefile.inc .endif
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Thu Jul 18 21:34:33 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: Makefile.inc Log Message: Cleanup. hardfloat stuff is now in its own directory To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/lib/libc/arch/m68k/gen/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/Makefile.inc diff -u src/lib/libc/arch/m68k/gen/Makefile.inc:1.31 src/lib/libc/arch/m68k/gen/Makefile.inc:1.32 --- src/lib/libc/arch/m68k/gen/Makefile.inc:1.31 Tue Nov 22 15:25:28 2011 +++ src/lib/libc/arch/m68k/gen/Makefile.inc Thu Jul 18 21:34:33 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.31 2011/11/22 15:25:28 joerg Exp $ +# $NetBSD: Makefile.inc,v 1.32 2013/07/18 21:34:33 matt Exp $ SRCS+= alloca.S fabs.S @@ -14,7 +14,7 @@ SRCS+= nanf.c # 68000-based machines use a double-extended `long double' type # for which the generic ieee754 versions can be used -.if ${MACHINE_ARCH} == m68000 +.if ${MACHINE_ARCH} != m68k SRCS+= infinityl_dbl_ieee754.c .else SRCS+= infinityl.c @@ -37,15 +37,10 @@ SRCS+= flt_rounds_softfloat.S .if ${MKSOFTFLOAT} != yes SRCS+= fpfake.c .endif -.else -SRCS+= modf.S -SRCS+= flt_rounds.S fpgetmask.S fpgetround.S fpgetsticky.S fpsetmask.S \ - fpsetround.S fpsetsticky.S -SRCS+= adddf3.S addsf3.S cmpdf2.S cmpsf2.S divdf3.S \ - divsf3.S divsi3.S extendsfdf2.S fixdfsi.S fixunsdfsi.S \ - floatsidf.S modsi3.S muldf3.S mulsf3.S mulsi3.S \ - subdf3.S subsf3.S truncdfsf2.S udivsi3.S \ - umodsi3.S umulsi3.S +.endif + +.if ${MACHINE_ARCH} == m68k +SRCS+= divsi3.S modsi3.S mulsi3.S udivsi3.S umodsi3.S umulsi3.S .endif SRCS+= setjmp.S longjmp.c @@ -54,17 +49,7 @@ SRCS+= sigsetjmp.S SRCS+= makecontext.c resumecontext.S swapcontext.S -.ifdef M68040 -SRCS+= ldexp_ieee754.c # generic ieee754 version -.elifdef MKSOFTFLOAT SRCS+= ldexp_ieee754.c # generic ieee754 version -.elifdef M68060 -SRCS+= ldexp_ieee754.c # generic ieee754 version -.elif ${MACHINE_ARCH} == m68000 -SRCS+= ldexp_ieee754.c # generic ieee754 version -.else -SRCS+= ldexp_881.c -.endif LSRCS.m68k.gen= Lint_bswap16.c Lint_bswap32.c Lint_bswap64.c \ Lint_resumecontext.c Lint_swapcontext.c
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Thu Jul 18 21:36:08 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: flt_rounds_softfloat.S Log Message: Fix typo. Don't define map if it isn't used. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/lib/libc/arch/m68k/gen/flt_rounds_softfloat.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/flt_rounds_softfloat.S diff -u src/lib/libc/arch/m68k/gen/flt_rounds_softfloat.S:1.4 src/lib/libc/arch/m68k/gen/flt_rounds_softfloat.S:1.5 --- src/lib/libc/arch/m68k/gen/flt_rounds_softfloat.S:1.4 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/flt_rounds_softfloat.S Thu Jul 18 21:36:08 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: flt_rounds_softfloat.S,v 1.4 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: flt_rounds_softfloat.S,v 1.5 2013/07/18 21:36:08 matt Exp $ */ /* * Written by J.T. Conklin, Apr 6, 1995 @@ -12,14 +12,14 @@ #include machine/asm.h .text - .even - +#if 0 /* NB: this is tied to the gcc-2.95 lb1sf68.asm: */ _map: .byte 1 /* round to nearest */ .byte 0 /* round to zero */ .byte 2 /* round to positive infinity */ .byte 3 /* round to negative infinity */ +#endif ENTRY(__flt_rounds) /* lea _C_LABEL(_fpCCR),%a0 | check the rounding mode */ @@ -27,4 +27,4 @@ ENTRY(__flt_rounds) /* lea _map,%a0 */ moveb #0,%d0 rts -END(_flt_rounds) +END(__flt_rounds)
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Thu Jul 18 21:36:37 UTC 2013 Removed Files: src/lib/libc/arch/m68k/gen: adddf3.S addsf3.S cmpdf2.S cmpsf2.S divdf3.S divsf3.S extendsfdf2.S fixdfsi.S fixunsdfsi.S floatsidf.S flt_rounds.S fpgetmask.S fpgetround.S fpgetsticky.S fpsetmask.S fpsetround.S fpsetsticky.S modf.S muldf3.S mulsf3.S subdf3.S subsf3.S truncdfsf2.S Log Message: Remove hardfloat now that it's someplace else. To generate a diff of this commit: cvs rdiff -u -r1.8 -r0 src/lib/libc/arch/m68k/gen/adddf3.S \ src/lib/libc/arch/m68k/gen/addsf3.S src/lib/libc/arch/m68k/gen/divdf3.S \ src/lib/libc/arch/m68k/gen/divsf3.S \ src/lib/libc/arch/m68k/gen/extendsfdf2.S \ src/lib/libc/arch/m68k/gen/floatsidf.S \ src/lib/libc/arch/m68k/gen/fpgetmask.S \ src/lib/libc/arch/m68k/gen/fpgetsticky.S \ src/lib/libc/arch/m68k/gen/modf.S src/lib/libc/arch/m68k/gen/mulsf3.S \ src/lib/libc/arch/m68k/gen/subdf3.S src/lib/libc/arch/m68k/gen/subsf3.S \ src/lib/libc/arch/m68k/gen/truncdfsf2.S cvs rdiff -u -r1.7 -r0 src/lib/libc/arch/m68k/gen/cmpdf2.S \ src/lib/libc/arch/m68k/gen/cmpsf2.S src/lib/libc/arch/m68k/gen/fixdfsi.S \ src/lib/libc/arch/m68k/gen/fixunsdfsi.S cvs rdiff -u -r1.10 -r0 src/lib/libc/arch/m68k/gen/flt_rounds.S \ src/lib/libc/arch/m68k/gen/fpsetround.S cvs rdiff -u -r1.9 -r0 src/lib/libc/arch/m68k/gen/fpgetround.S \ src/lib/libc/arch/m68k/gen/fpsetmask.S \ src/lib/libc/arch/m68k/gen/fpsetsticky.S \ src/lib/libc/arch/m68k/gen/muldf3.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Wed Jul 17 06:43:32 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: fabs.S negdf2.S negsf2.S Log Message: Use __HAVE_FPU__ instead __HAVE_68881__ To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 src/lib/libc/arch/m68k/gen/fabs.S cvs rdiff -u -r1.9 -r1.10 src/lib/libc/arch/m68k/gen/negdf2.S \ src/lib/libc/arch/m68k/gen/negsf2.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/fabs.S diff -u src/lib/libc/arch/m68k/gen/fabs.S:1.10 src/lib/libc/arch/m68k/gen/fabs.S:1.11 --- src/lib/libc/arch/m68k/gen/fabs.S:1.10 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/fabs.S Wed Jul 17 06:43:32 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: fabs.S,v 1.10 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: fabs.S,v 1.11 2013/07/17 06:43:32 matt Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -31,10 +31,10 @@ #include machine/asm.h -RCSID($NetBSD: fabs.S,v 1.10 2013/07/16 22:12:20 matt Exp $) +RCSID($NetBSD: fabs.S,v 1.11 2013/07/17 06:43:32 matt Exp $) ENTRY(fabs) -#if defined(__SVR4_ABI__) defined(__HAVE_68881__) +#if defined(__SVR4_ABI__) defined(__HAVE_FPU__) bclr #31,4(%sp) fmoved 4(%sp),%fp0 #else Index: src/lib/libc/arch/m68k/gen/negdf2.S diff -u src/lib/libc/arch/m68k/gen/negdf2.S:1.9 src/lib/libc/arch/m68k/gen/negdf2.S:1.10 --- src/lib/libc/arch/m68k/gen/negdf2.S:1.9 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/negdf2.S Wed Jul 17 06:43:32 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: negdf2.S,v 1.9 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: negdf2.S,v 1.10 2013/07/17 06:43:32 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,13 +39,13 @@ #if 0 RCSID(from: @(#)negdf2.s 5.1 (Berkeley) 6/7/90) #else - RCSID($NetBSD: negdf2.S,v 1.9 2013/07/16 22:12:20 matt Exp $) + RCSID($NetBSD: negdf2.S,v 1.10 2013/07/17 06:43:32 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ /* -double */ ENTRY(__negdf2) -#if defined(__SVR4_ABI__) defined(__HAVE_68881__) +#if defined(__SVR4_ABI__) defined(__HAVE_FPU__) fnegd 4(%sp),%fp0 #else movel 4(%sp),%d0 Index: src/lib/libc/arch/m68k/gen/negsf2.S diff -u src/lib/libc/arch/m68k/gen/negsf2.S:1.9 src/lib/libc/arch/m68k/gen/negsf2.S:1.10 --- src/lib/libc/arch/m68k/gen/negsf2.S:1.9 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/negsf2.S Wed Jul 17 06:43:32 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: negsf2.S,v 1.9 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: negsf2.S,v 1.10 2013/07/17 06:43:32 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,13 +39,13 @@ #if 0 RCSIDfrom: @(#)negsf2.s 5.1 (Berkeley) 6/7/90) #else - RCSID($NetBSD: negsf2.S,v 1.9 2013/07/16 22:12:20 matt Exp $) + RCSID($NetBSD: negsf2.S,v 1.10 2013/07/17 06:43:32 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ /* -single */ ENTRY(__negsf2) -#if defined(__SVR4_ABI__) defined(__HAVE_68881__) +#if defined(__SVR4_ABI__) defined(__HAVE_FPU__) fnegs 4(%sp),%fp0 #else movel 4(%sp),%d0
CVS commit: src/lib/libc/arch/m68k/string
Module Name:src Committed By: matt Date: Tue Jul 16 21:46:42 UTC 2013 Modified Files: src/lib/libc/arch/m68k/string: memccpy.S swab.S Log Message: Add END(func) To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/lib/libc/arch/m68k/string/memccpy.S cvs rdiff -u -r1.8 -r1.9 src/lib/libc/arch/m68k/string/swab.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/string/memccpy.S diff -u src/lib/libc/arch/m68k/string/memccpy.S:1.2 src/lib/libc/arch/m68k/string/memccpy.S:1.3 --- src/lib/libc/arch/m68k/string/memccpy.S:1.2 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/string/memccpy.S Tue Jul 16 21:46:42 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: memccpy.S,v 1.2 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: memccpy.S,v 1.3 2013/07/16 21:46:42 matt Exp $ */ /* * Copyright (C) 1999 Scott Reynolds. All rights reserved. @@ -29,7 +29,7 @@ #include machine/asm.h #if defined(LIBC_SCCS) !defined(lint) - RCSID($NetBSD: memccpy.S,v 1.2 2013/07/16 20:49:42 matt Exp $) + RCSID($NetBSD: memccpy.S,v 1.3 2013/07/16 21:46:42 matt Exp $) #endif /* LIBC_SCCS and not lint */ ENTRY(memccpy) @@ -80,3 +80,4 @@ Lmcnzdone: Lmcdone: movl %a0,%d0 rts +END(memccpy) Index: src/lib/libc/arch/m68k/string/swab.S diff -u src/lib/libc/arch/m68k/string/swab.S:1.8 src/lib/libc/arch/m68k/string/swab.S:1.9 --- src/lib/libc/arch/m68k/string/swab.S:1.8 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/string/swab.S Tue Jul 16 21:46:42 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: swab.S,v 1.8 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: swab.S,v 1.9 2013/07/16 21:46:42 matt Exp $ */ #include machine/asm.h @@ -18,3 +18,4 @@ swloop: swdone: rts +END(swab)
CVS commit: src/lib/libc/arch/m68k/stdlib
Module Name:src Committed By: matt Date: Tue Jul 16 21:48:32 UTC 2013 Modified Files: src/lib/libc/arch/m68k/stdlib: abs.S llabs.S Log Message: WEAK_ALIAS is always present Use END(func) To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/stdlib/abs.S cvs rdiff -u -r1.5 -r1.6 src/lib/libc/arch/m68k/stdlib/llabs.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/stdlib/abs.S diff -u src/lib/libc/arch/m68k/stdlib/abs.S:1.7 src/lib/libc/arch/m68k/stdlib/abs.S:1.8 --- src/lib/libc/arch/m68k/stdlib/abs.S:1.7 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/stdlib/abs.S Tue Jul 16 21:48:32 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: abs.S,v 1.7 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: abs.S,v 1.8 2013/07/16 21:48:32 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)abs.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: abs.S,v 1.7 2013/07/16 20:49:42 matt Exp $) + RCSID($NetBSD: abs.S,v 1.8 2013/07/16 21:48:32 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -56,3 +56,4 @@ ENTRY(abs) negl %d0 L1: rts +END(abs) Index: src/lib/libc/arch/m68k/stdlib/llabs.S diff -u src/lib/libc/arch/m68k/stdlib/llabs.S:1.5 src/lib/libc/arch/m68k/stdlib/llabs.S:1.6 --- src/lib/libc/arch/m68k/stdlib/llabs.S:1.5 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/stdlib/llabs.S Tue Jul 16 21:48:32 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: llabs.S,v 1.5 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: llabs.S,v 1.6 2013/07/16 21:48:32 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,21 +39,16 @@ #if 0 RCSID(from: @(#)abs.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: llabs.S,v 1.5 2013/07/16 20:49:42 matt Exp $) + RCSID($NetBSD: llabs.S,v 1.6 2013/07/16 21:48:32 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ -#ifdef WEAK_ALIAS WEAK_ALIAS(llabs, _llabs) WEAK_ALIAS(imaxabs, _llabs) -#endif + /* llabs - long long int absolute value */ -#ifdef WEAK_ALIAS ENTRY(_llabs) -#else -ENTRY(llabs) -#endif movl 8(%sp),%d1 movl 4(%sp),%d0 jge L1 @@ -61,3 +56,4 @@ ENTRY(llabs) negxl %d0 L1: rts +END(_llabs)
CVS commit: src/lib/libc/arch/m68k/quad
Module Name:src Committed By: matt Date: Tue Jul 16 21:49:45 UTC 2013 Modified Files: src/lib/libc/arch/m68k/quad: ashldi3.S ashrdi3.S lshrdi3.S Log Message: Add END(func) To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/lib/libc/arch/m68k/quad/ashldi3.S \ src/lib/libc/arch/m68k/quad/ashrdi3.S cvs rdiff -u -r1.6 -r1.7 src/lib/libc/arch/m68k/quad/lshrdi3.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/quad/ashldi3.S diff -u src/lib/libc/arch/m68k/quad/ashldi3.S:1.5 src/lib/libc/arch/m68k/quad/ashldi3.S:1.6 --- src/lib/libc/arch/m68k/quad/ashldi3.S:1.5 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/quad/ashldi3.S Tue Jul 16 21:49:45 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: ashldi3.S,v 1.5 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: ashldi3.S,v 1.6 2013/07/16 21:49:45 matt Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -58,3 +58,4 @@ L2: asll %d2,%d0 L3: moveml -12(%fp),%d2-%d4 unlk %fp rts +END(__ashldi3) Index: src/lib/libc/arch/m68k/quad/ashrdi3.S diff -u src/lib/libc/arch/m68k/quad/ashrdi3.S:1.5 src/lib/libc/arch/m68k/quad/ashrdi3.S:1.6 --- src/lib/libc/arch/m68k/quad/ashrdi3.S:1.5 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/quad/ashrdi3.S Tue Jul 16 21:49:45 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: ashrdi3.S,v 1.5 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: ashrdi3.S,v 1.6 2013/07/16 21:49:45 matt Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -59,3 +59,4 @@ L2: lsrl %d2,%d1 L3: moveml -12(%fp),%d2-%d4 unlk %fp rts +END(__ashrdi3) Index: src/lib/libc/arch/m68k/quad/lshrdi3.S diff -u src/lib/libc/arch/m68k/quad/lshrdi3.S:1.6 src/lib/libc/arch/m68k/quad/lshrdi3.S:1.7 --- src/lib/libc/arch/m68k/quad/lshrdi3.S:1.6 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/quad/lshrdi3.S Tue Jul 16 21:49:45 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: lshrdi3.S,v 1.6 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: lshrdi3.S,v 1.7 2013/07/16 21:49:45 matt Exp $ */ /*- * Copyright (c) 1996 The NetBSD Foundation, Inc. @@ -58,3 +58,4 @@ L2: lsrl %d2,%d1 L3: moveml -12(%fp),%d2-%d4 unlk %fp rts +END(__lshrdi3)
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Tue Jul 16 22:12:20 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: _setjmp.S adddf3.S addsf3.S alloca.S ashlsi3.S ashrsi3.S cmpdf2.S cmpsf2.S divdf3.S divsf3.S extendsfdf2.S fabs.S fixdfsi.S fixunsdfsi.S floatsidf.S flt_rounds.S flt_rounds_softfloat.S fpgetmask.S fpgetround.S fpgetsticky.S fpsetmask.S fpsetround.S fpsetsticky.S lshlsi3.S lshrsi3.S modf.S muldf3.S mulsf3.S negdf2.S negsf2.S resumecontext.S setjmp.S sigsetjmp.S subdf3.S subsf3.S swapcontext.S truncdfsf2.S umulsi3.S Log Message: Add END(func) To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/lib/libc/arch/m68k/gen/_setjmp.S \ src/lib/libc/arch/m68k/gen/fpgetround.S \ src/lib/libc/arch/m68k/gen/fpsetmask.S \ src/lib/libc/arch/m68k/gen/fpsetsticky.S \ src/lib/libc/arch/m68k/gen/muldf3.S src/lib/libc/arch/m68k/gen/negdf2.S \ src/lib/libc/arch/m68k/gen/negsf2.S cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/gen/adddf3.S \ src/lib/libc/arch/m68k/gen/addsf3.S src/lib/libc/arch/m68k/gen/alloca.S \ src/lib/libc/arch/m68k/gen/divdf3.S src/lib/libc/arch/m68k/gen/divsf3.S \ src/lib/libc/arch/m68k/gen/extendsfdf2.S \ src/lib/libc/arch/m68k/gen/floatsidf.S \ src/lib/libc/arch/m68k/gen/fpgetmask.S \ src/lib/libc/arch/m68k/gen/fpgetsticky.S \ src/lib/libc/arch/m68k/gen/modf.S src/lib/libc/arch/m68k/gen/mulsf3.S \ src/lib/libc/arch/m68k/gen/subdf3.S src/lib/libc/arch/m68k/gen/subsf3.S \ src/lib/libc/arch/m68k/gen/truncdfsf2.S cvs rdiff -u -r1.6 -r1.7 src/lib/libc/arch/m68k/gen/ashlsi3.S \ src/lib/libc/arch/m68k/gen/ashrsi3.S src/lib/libc/arch/m68k/gen/cmpdf2.S \ src/lib/libc/arch/m68k/gen/cmpsf2.S src/lib/libc/arch/m68k/gen/fixdfsi.S \ src/lib/libc/arch/m68k/gen/fixunsdfsi.S \ src/lib/libc/arch/m68k/gen/lshlsi3.S src/lib/libc/arch/m68k/gen/lshrsi3.S \ src/lib/libc/arch/m68k/gen/resumecontext.S \ src/lib/libc/arch/m68k/gen/umulsi3.S cvs rdiff -u -r1.9 -r1.10 src/lib/libc/arch/m68k/gen/fabs.S \ src/lib/libc/arch/m68k/gen/flt_rounds.S \ src/lib/libc/arch/m68k/gen/fpsetround.S \ src/lib/libc/arch/m68k/gen/sigsetjmp.S cvs rdiff -u -r1.3 -r1.4 src/lib/libc/arch/m68k/gen/flt_rounds_softfloat.S cvs rdiff -u -r1.13 -r1.14 src/lib/libc/arch/m68k/gen/setjmp.S cvs rdiff -u -r1.4 -r1.5 src/lib/libc/arch/m68k/gen/swapcontext.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/_setjmp.S diff -u src/lib/libc/arch/m68k/gen/_setjmp.S:1.8 src/lib/libc/arch/m68k/gen/_setjmp.S:1.9 --- src/lib/libc/arch/m68k/gen/_setjmp.S:1.8 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/gen/_setjmp.S Tue Jul 16 22:12:20 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: _setjmp.S,v 1.8 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: _setjmp.S,v 1.9 2013/07/16 22:12:20 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)_setjmp.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: _setjmp.S,v 1.8 2013/07/16 20:49:42 matt Exp $) + RCSID($NetBSD: _setjmp.S,v 1.9 2013/07/16 22:12:20 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -66,6 +66,7 @@ ENTRY(_setjmp) moveml #0x3CFC,(%a0) /* save other non-scratch regs */ clrl %d0 /* return zero */ rts +END(_setjmp) ENTRY(_longjmp) movl 4(%sp),%a0 /* save area pointer */ @@ -86,3 +87,4 @@ ok: botch: jbsr PIC_PLT(_C_LABEL(longjmperror)) stop #0 +END(_longjmp) Index: src/lib/libc/arch/m68k/gen/fpgetround.S diff -u src/lib/libc/arch/m68k/gen/fpgetround.S:1.8 src/lib/libc/arch/m68k/gen/fpgetround.S:1.9 --- src/lib/libc/arch/m68k/gen/fpgetround.S:1.8 Sun Jan 13 21:45:44 2002 +++ src/lib/libc/arch/m68k/gen/fpgetround.S Tue Jul 16 22:12:20 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: fpgetround.S,v 1.8 2002/01/13 21:45:44 thorpej Exp $ */ +/* $NetBSD: fpgetround.S,v 1.9 2013/07/16 22:12:20 matt Exp $ */ /* * Written by J.T. Conklin, Apr 6, 1995 @@ -7,12 +7,9 @@ #include machine/asm.h -#ifdef WEAK_ALIAS WEAK_ALIAS(fpgetround, _fpgetround) ENTRY(_fpgetround) -#else -ENTRY(fpgetround) -#endif fmovel %fpcr,%d0 bfextu %d0{#26:#2},%d0 rts +END(_fpgetround) Index: src/lib/libc/arch/m68k/gen/fpsetmask.S diff -u src/lib/libc/arch/m68k/gen/fpsetmask.S:1.8 src/lib/libc/arch/m68k/gen/fpsetmask.S:1.9 --- src/lib/libc/arch/m68k/gen/fpsetmask.S:1.8 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/gen/fpsetmask.S Tue Jul 16 22:12:20 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: fpsetmask.S,v 1.8 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: fpsetmask.S,v 1.9 2013/07/16 22:12:20 matt Exp $ */ /* * Written by Charles M. Hannum, Apr 9, 1995 @@ -7,12 +7,8 @@ #include machine/asm.h -#ifdef WEAK_ALIAS WEAK_ALIAS(fpsetmask, _fpsetmask) ENTRY(_fpsetmask) -#else -ENTRY(fpsetmask) -#endif movel %d2,-(%sp)
CVS commit: src/lib/libc/arch/m68k/sys
Module Name:src Committed By: matt Date: Tue Jul 16 22:15:55 UTC 2013 Modified Files: src/lib/libc/arch/m68k/sys: __m68k_read_tp.S fork.S getcontext.S mremap.S Log Message: Add END(func) To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/lib/libc/arch/m68k/sys/__m68k_read_tp.S cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/sys/fork.S cvs rdiff -u -r1.4 -r1.5 src/lib/libc/arch/m68k/sys/getcontext.S cvs rdiff -u -r1.2 -r1.3 src/lib/libc/arch/m68k/sys/mremap.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/sys/__m68k_read_tp.S diff -u src/lib/libc/arch/m68k/sys/__m68k_read_tp.S:1.1 src/lib/libc/arch/m68k/sys/__m68k_read_tp.S:1.2 --- src/lib/libc/arch/m68k/sys/__m68k_read_tp.S:1.1 Tue Nov 22 15:25:28 2011 +++ src/lib/libc/arch/m68k/sys/__m68k_read_tp.S Tue Jul 16 22:15:55 2013 @@ -4,4 +4,4 @@ ENTRY(__m68k_read_tp) SYSTRAP(_lwp_getprivate) movl %d0,%a0 rts - .size __m68k_read_tp, .-__m68k_read_tp +END(__m68k_read_tp) Index: src/lib/libc/arch/m68k/sys/fork.S diff -u src/lib/libc/arch/m68k/sys/fork.S:1.7 src/lib/libc/arch/m68k/sys/fork.S:1.8 --- src/lib/libc/arch/m68k/sys/fork.S:1.7 Thu Aug 7 16:42:14 2003 +++ src/lib/libc/arch/m68k/sys/fork.S Tue Jul 16 22:15:55 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: fork.S,v 1.7 2003/08/07 16:42:14 agc Exp $ */ +/* $NetBSD: fork.S,v 1.8 2013/07/16 22:15:55 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)fork.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: fork.S,v 1.7 2003/08/07 16:42:14 agc Exp $) + RCSID($NetBSD: fork.S,v 1.8 2013/07/16 22:15:55 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -47,3 +47,4 @@ _SYSCALL(__fork,fork) subql #1,%d1 /* from 1 to 0 in child, 0 to -1 in parent */ andl %d1,%d0 rts /* pid = fork() */ +END(__fork) Index: src/lib/libc/arch/m68k/sys/getcontext.S diff -u src/lib/libc/arch/m68k/sys/getcontext.S:1.4 src/lib/libc/arch/m68k/sys/getcontext.S:1.5 --- src/lib/libc/arch/m68k/sys/getcontext.S:1.4 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/sys/getcontext.S Tue Jul 16 22:15:55 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: getcontext.S,v 1.4 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: getcontext.S,v 1.5 2013/07/16 22:15:55 matt Exp $ */ /*- * Copyright (c) 2001 The NetBSD Foundation, Inc. @@ -32,7 +32,7 @@ #include SYS.h #if defined(SYSLIBC_SCCS) !defined(lint) - RCSID($NetBSD: getcontext.S,v 1.4 2013/07/16 20:49:42 matt Exp $) + RCSID($NetBSD: getcontext.S,v 1.5 2013/07/16 22:15:55 matt Exp $) #endif /* SYSLIBC_SCCS !lint */ #ifdef WEAK_ALIAS @@ -45,3 +45,4 @@ _SYSCALL(_getcontext,getcontext) movl (%sp),100(%a0) | adjust saved program counter clrl 36(%a0) | arrange for return value of 0 rts +END(_getcontext) Index: src/lib/libc/arch/m68k/sys/mremap.S diff -u src/lib/libc/arch/m68k/sys/mremap.S:1.2 src/lib/libc/arch/m68k/sys/mremap.S:1.3 --- src/lib/libc/arch/m68k/sys/mremap.S:1.2 Mon Apr 28 20:22:56 2008 +++ src/lib/libc/arch/m68k/sys/mremap.S Tue Jul 16 22:15:55 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: mremap.S,v 1.2 2008/04/28 20:22:56 martin Exp $ */ +/* $NetBSD: mremap.S,v 1.3 2013/07/16 22:15:55 matt Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -33,3 +33,4 @@ SYSCALL(mremap) movl %d0,%a0 #endif rts +END(mremap)
CVS commit: src/lib/libc/arch/m68k/sys
Module Name:src Committed By: matt Date: Tue Jul 16 22:16:53 UTC 2013 Modified Files: src/lib/libc/arch/m68k/sys: pipe.S shmat.S Log Message: Add END(func) To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/sys/pipe.S cvs rdiff -u -r1.2 -r1.3 src/lib/libc/arch/m68k/sys/shmat.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/sys/pipe.S diff -u src/lib/libc/arch/m68k/sys/pipe.S:1.7 src/lib/libc/arch/m68k/sys/pipe.S:1.8 --- src/lib/libc/arch/m68k/sys/pipe.S:1.7 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/sys/pipe.S Tue Jul 16 22:16:53 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: pipe.S,v 1.7 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: pipe.S,v 1.8 2013/07/16 22:16:53 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)pipe.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: pipe.S,v 1.7 2013/07/16 20:49:42 matt Exp $) + RCSID($NetBSD: pipe.S,v 1.8 2013/07/16 22:16:53 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -53,3 +53,4 @@ _SYSCALL(_pipe,pipe) movl %d1,(%a0) clrl %d0 rts +END(_pipe) Index: src/lib/libc/arch/m68k/sys/shmat.S diff -u src/lib/libc/arch/m68k/sys/shmat.S:1.2 src/lib/libc/arch/m68k/sys/shmat.S:1.3 --- src/lib/libc/arch/m68k/sys/shmat.S:1.2 Mon Apr 28 20:22:56 2008 +++ src/lib/libc/arch/m68k/sys/shmat.S Tue Jul 16 22:16:53 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: shmat.S,v 1.2 2008/04/28 20:22:56 martin Exp $ */ +/* $NetBSD: shmat.S,v 1.3 2013/07/16 22:16:53 matt Exp $ */ /*- * Copyright (c) 2000 The NetBSD Foundation, Inc. @@ -33,3 +33,4 @@ SYSCALL(shmat) movl %d0,%a0 #endif rts +END(shmat)
CVS commit: src/lib/libc/arch/m68k
Module Name:src Committed By: matt Date: Tue Jul 16 22:18:14 UTC 2013 Modified Files: src/lib/libc/arch/m68k: SYS.h Log Message: Make CERROR hidden. Use END() appropriately. To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.17 src/lib/libc/arch/m68k/SYS.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/SYS.h diff -u src/lib/libc/arch/m68k/SYS.h:1.16 src/lib/libc/arch/m68k/SYS.h:1.17 --- src/lib/libc/arch/m68k/SYS.h:1.16 Thu Aug 7 16:42:09 2003 +++ src/lib/libc/arch/m68k/SYS.h Tue Jul 16 22:18:14 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: SYS.h,v 1.16 2003/08/07 16:42:09 agc Exp $ */ +/* $NetBSD: SYS.h,v 1.17 2013/07/16 22:18:14 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -45,23 +45,15 @@ #define SYSTRAP(x) movl #SYS_/**/x,%d0; trap #0 #endif -#ifdef __ELF__ #define CERROR _C_LABEL(__cerror) -#define CURBRK _C_LABEL(__curbrk) -#else -#define CERROR _ASM_LABEL(cerror) -#define CURBRK _ASM_LABEL(curbrk) -#endif #define _SYSCALL_NOERROR(x,y) \ ENTRY(x); \ SYSTRAP(y) #define _SYSCALL(x,y) \ - .even;\ - err: jra PIC_PLT(CERROR); \ _SYSCALL_NOERROR(x,y); \ - jcs err + jcc CERROR #define SYSCALL_NOERROR(x) \ _SYSCALL_NOERROR(x,x) @@ -71,11 +63,13 @@ #define PSEUDO_NOERROR(x,y) \ _SYSCALL_NOERROR(x,y); \ - rts + rts;\ + END(x) #define PSEUDO(x,y) \ _SYSCALL(x,y); \ - rts + rts;\ + END(x) #define RSYSCALL_NOERROR(x) \ PSEUDO_NOERROR(x,x) @@ -95,3 +89,4 @@ #define ASMSTR .asciz .globl CERROR + .hidden CERROR
CVS commit: src/lib/libc/arch/m68k/sys
Module Name:src Committed By: matt Date: Tue Jul 16 22:19:37 UTC 2013 Modified Files: src/lib/libc/arch/m68k/sys: __mmap.S Log Message: Add END(func) To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/lib/libc/arch/m68k/sys/__mmap.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/sys/__mmap.S diff -u src/lib/libc/arch/m68k/sys/__mmap.S:1.2 src/lib/libc/arch/m68k/sys/__mmap.S:1.3 --- src/lib/libc/arch/m68k/sys/__mmap.S:1.2 Mon Apr 28 20:22:56 2008 +++ src/lib/libc/arch/m68k/sys/__mmap.S Tue Jul 16 22:19:37 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: __mmap.S,v 1.2 2008/04/28 20:22:56 martin Exp $ */ +/* $NetBSD: __mmap.S,v 1.3 2013/07/16 22:19:37 matt Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -33,3 +33,4 @@ _SYSCALL(__mmap,mmap) movl %d0,%a0 #endif rts +END(__mmap)
CVS commit: src/lib/libc/arch/m68k/sys
Module Name:src Committed By: matt Date: Tue Jul 16 22:19:16 UTC 2013 Modified Files: src/lib/libc/arch/m68k/sys: __sigtramp2.S _lwp_getprivate.S Log Message: Add END(func) Use SYSTRAP To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/lib/libc/arch/m68k/sys/__sigtramp2.S cvs rdiff -u -r1.2 -r1.3 src/lib/libc/arch/m68k/sys/_lwp_getprivate.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/sys/__sigtramp2.S diff -u src/lib/libc/arch/m68k/sys/__sigtramp2.S:1.3 src/lib/libc/arch/m68k/sys/__sigtramp2.S:1.4 --- src/lib/libc/arch/m68k/sys/__sigtramp2.S:1.3 Tue Jul 16 20:49:42 2013 +++ src/lib/libc/arch/m68k/sys/__sigtramp2.S Tue Jul 16 22:19:16 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: __sigtramp2.S,v 1.3 2013/07/16 20:49:42 matt Exp $ */ +/* $NetBSD: __sigtramp2.S,v 1.4 2013/07/16 22:19:16 matt Exp $ */ /*- * Copyright (c) 2003 The NetBSD Foundation, Inc. @@ -44,7 +44,7 @@ ENTRY_NOPROFILE(__sigtramp_siginfo_2) movl 8(%sp),%a0 /* get pointer to ucontext */ movl %a0,4(%sp) /* put it in the argument slot */ /* fake return address already there */ -movl#SYS_setcontext,%d0 -trap#0 + SYSTRAP(setcontext) movl %d0,4(%sp) /* error code */ SYSTRAP(exit) /* exit */ +END(__sigtramp_siginfo_2) Index: src/lib/libc/arch/m68k/sys/_lwp_getprivate.S diff -u src/lib/libc/arch/m68k/sys/_lwp_getprivate.S:1.2 src/lib/libc/arch/m68k/sys/_lwp_getprivate.S:1.3 --- src/lib/libc/arch/m68k/sys/_lwp_getprivate.S:1.2 Mon Apr 28 20:22:56 2008 +++ src/lib/libc/arch/m68k/sys/_lwp_getprivate.S Tue Jul 16 22:19:16 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: _lwp_getprivate.S,v 1.2 2008/04/28 20:22:56 martin Exp $ */ +/* $NetBSD: _lwp_getprivate.S,v 1.3 2013/07/16 22:19:16 matt Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -33,3 +33,4 @@ SYSCALL(_lwp_getprivate) movl %d0,%a0 #endif rts +END(_lwp_getprivate)
CVS commit: src/lib/libc/arch/m68k/sys
Module Name:src Committed By: matt Date: Tue Jul 16 22:20:35 UTC 2013 Modified Files: src/lib/libc/arch/m68k/sys: exect.S syscall.S Log Message: Use SYSTRAP Use a branch for CERROR (avoid the PLT) To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/sys/exect.S \ src/lib/libc/arch/m68k/sys/syscall.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/sys/exect.S diff -u src/lib/libc/arch/m68k/sys/exect.S:1.7 src/lib/libc/arch/m68k/sys/exect.S:1.8 --- src/lib/libc/arch/m68k/sys/exect.S:1.7 Thu Aug 7 16:42:14 2003 +++ src/lib/libc/arch/m68k/sys/exect.S Tue Jul 16 22:20:35 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: exect.S,v 1.7 2003/08/07 16:42:14 agc Exp $ */ +/* $NetBSD: exect.S,v 1.8 2013/07/16 22:20:35 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -40,11 +40,11 @@ #if 0 RCSID(from: @(#)exect.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: exect.S,v 1.7 2003/08/07 16:42:14 agc Exp $) + RCSID($NetBSD: exect.S,v 1.8 2013/07/16 22:20:35 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ ENTRY(exect) - movl #SYS_execve,%d0 - trap #0 - jra PIC_PLT(CERROR) /* exect(file, argv, env) */ + SYSTRAP(execve) + jbra CERROR /* exect(file, argv, env) */ +END(exect) Index: src/lib/libc/arch/m68k/sys/syscall.S diff -u src/lib/libc/arch/m68k/sys/syscall.S:1.7 src/lib/libc/arch/m68k/sys/syscall.S:1.8 --- src/lib/libc/arch/m68k/sys/syscall.S:1.7 Thu Aug 7 16:42:14 2003 +++ src/lib/libc/arch/m68k/sys/syscall.S Tue Jul 16 22:20:35 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: syscall.S,v 1.7 2003/08/07 16:42:14 agc Exp $ */ +/* $NetBSD: syscall.S,v 1.8 2013/07/16 22:20:35 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,14 +39,13 @@ #if 0 RCSID(from: @(#)syscall.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: syscall.S,v 1.7 2003/08/07 16:42:14 agc Exp $) + RCSID($NetBSD: syscall.S,v 1.8 2013/07/16 22:20:35 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ ENTRY(syscall) clrl %d0 trap #0 - jcs err + jcc CERROR rts -err: - jra PIC_PLT(CERROR) +END(syscall)
CVS commit: src/lib/libc/arch/m68k
Module Name:src Committed By: matt Date: Wed Jul 17 01:41:17 UTC 2013 Modified Files: src/lib/libc/arch/m68k: Makefile.inc Added Files: src/lib/libc/arch/m68k: genassym.cf Log Message: Add genassym / assym.h support To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/lib/libc/arch/m68k/Makefile.inc cvs rdiff -u -r0 -r1.1 src/lib/libc/arch/m68k/genassym.cf Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/Makefile.inc diff -u src/lib/libc/arch/m68k/Makefile.inc:1.14 src/lib/libc/arch/m68k/Makefile.inc:1.15 --- src/lib/libc/arch/m68k/Makefile.inc:1.14 Tue Nov 22 15:25:28 2011 +++ src/lib/libc/arch/m68k/Makefile.inc Wed Jul 17 01:41:17 2013 @@ -1,10 +1,12 @@ -# $NetBSD: Makefile.inc,v 1.14 2011/11/22 15:25:28 joerg Exp $ +# $NetBSD: Makefile.inc,v 1.15 2013/07/17 01:41:17 matt Exp $ SRCS+= __sigaction14_sigtramp.c __sigtramp2.S __m68k_read_tp.S __mmap.S ASM+= _lwp_getprivate.S mremap.S +CPPFLAGS+= -I. # for assym.h + .if ${MKSOFTFLOAT} != no -CPPFLAGS+= -DSOFTLOFLOAT_NEED_FIXUNS -DSOFTFLOAT -DSOFTFLOATM68K_FOR_GCC +CPPFLAGS+= -DSOFTFLOAT_NEED_FIXUNS -DSOFTFLOAT -DSOFTFLOATM68K_FOR_GCC . include softfloat/Makefile.inc .endif Added files: Index: src/lib/libc/arch/m68k/genassym.cf diff -u /dev/null src/lib/libc/arch/m68k/genassym.cf:1.1 --- /dev/null Wed Jul 17 01:41:17 2013 +++ src/lib/libc/arch/m68k/genassym.cf Wed Jul 17 01:41:17 2013 @@ -0,0 +1,52 @@ +# $NetBSD: genassym.cf,v 1.1 2013/07/17 01:41:17 matt Exp $ + +# +# Copyright (c) 2013 The NetBSD Foundation, Inc. +# All rights reserved. +# +# This code is derived from software contributed to The NetBSD Foundation +# by Matt Thomas m...@3am-sfotware.com. +# +# 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. +# +# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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 sys/types.h +include machine/reg.h +include ucontext.h +include signal.h + +define UC_LINK offsetof(ucontext_t, uc_link) +define UC_SIGMASK offsetof(ucontext_t, uc_sigmask) +define UC_MCONTEXT_D0 offsetof(ucontext_t, uc_mcontext.__gregs[_REG_D0]) +define UC_MCONTEXT_SP offsetof(ucontext_t, uc_mcontext.__gregs[_REG_A7]) +define UC_MCONTEXT_PC offsetof(ucontext_t, uc_mcontext.__gregs[_REG_PC]) +define UC_SIZE sizeof(ucontext_t) + +define SC_ONSTACK offsetof(struct sigcontext, sc_onstack) +define SC___MASK13 offsetof(struct sigcontext, __sc_mask13) +define SC_SP offsetof(struct sigcontext, sc_sp) +define SC_FP offsetof(struct sigcontext, sc_fp) +define SC_AP offsetof(struct sigcontext, sc_ap) +define SC_PC offsetof(struct sigcontext, sc_pc) +define SC_PS offsetof(struct sigcontext, sc_ps) +define SC_MASK offsetof(struct sigcontext, sc_mask) +define SC_SIZE sizeof(struct sigcontext)
CVS commit: src/lib/libc/arch/m68k/sys
Module Name:src Committed By: matt Date: Wed Jul 17 03:01:27 UTC 2013 Modified Files: src/lib/libc/arch/m68k/sys: getcontext.S Log Message: Use assym.h To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/lib/libc/arch/m68k/sys/getcontext.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/sys/getcontext.S diff -u src/lib/libc/arch/m68k/sys/getcontext.S:1.5 src/lib/libc/arch/m68k/sys/getcontext.S:1.6 --- src/lib/libc/arch/m68k/sys/getcontext.S:1.5 Tue Jul 16 22:15:55 2013 +++ src/lib/libc/arch/m68k/sys/getcontext.S Wed Jul 17 03:01:27 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: getcontext.S,v 1.5 2013/07/16 22:15:55 matt Exp $ */ +/* $NetBSD: getcontext.S,v 1.6 2013/07/17 03:01:27 matt Exp $ */ /*- * Copyright (c) 2001 The NetBSD Foundation, Inc. @@ -30,9 +30,10 @@ */ #include SYS.h +#include assym.h #if defined(SYSLIBC_SCCS) !defined(lint) - RCSID($NetBSD: getcontext.S,v 1.5 2013/07/16 22:15:55 matt Exp $) + RCSID($NetBSD: getcontext.S,v 1.6 2013/07/17 03:01:27 matt Exp $) #endif /* SYSLIBC_SCCS !lint */ #ifdef WEAK_ALIAS @@ -41,8 +42,8 @@ WEAK_ALIAS(getcontext, _getcontext) _SYSCALL(_getcontext,getcontext) movl 4(%sp),%a0 - addql #4,96(%a0) | adjust saved stack pointer - movl (%sp),100(%a0) | adjust saved program counter - clrl 36(%a0) | arrange for return value of 0 + addql #4,UC_MCONTEXT_SP(%a0) | adjust saved stack pointer + movl %sp@,UC_MCONTEXT_PC(%a0)| adjust saved program counter + clrl UC_MCONTEXT_D0(%a0) | arrange for return value of 0 rts END(_getcontext)
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Wed Jul 17 03:04:54 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: resumecontext.S Log Message: Use assym.h To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/gen/resumecontext.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/resumecontext.S diff -u src/lib/libc/arch/m68k/gen/resumecontext.S:1.7 src/lib/libc/arch/m68k/gen/resumecontext.S:1.8 --- src/lib/libc/arch/m68k/gen/resumecontext.S:1.7 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/resumecontext.S Wed Jul 17 03:04:54 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: resumecontext.S,v 1.7 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: resumecontext.S,v 1.8 2013/07/17 03:04:54 matt Exp $ */ /*- * Copyright (c) 2001 The NetBSD Foundation, Inc. @@ -30,9 +30,10 @@ */ #include machine/asm.h +#include assym.h #if defined(LIBC_SCCS) !defined(lint) - RCSID($NetBSD: resumecontext.S,v 1.7 2013/07/16 22:12:20 matt Exp $) + RCSID($NetBSD: resumecontext.S,v 1.8 2013/07/17 03:04:54 matt Exp $) #endif /* LIBC_SCCS !lint */ /* @@ -42,11 +43,11 @@ */ ENTRY(_resumecontext) - subl #(4 + 1024),%sp /* retaddr preservation + ucontext_t */ + subl #(4 + UC_SIZE),%sp /* retaddr preservation + ucontext_t */ lea (%sp),%a0 movl %a0,-(%sp) jbsr PIC_PLT(_C_LABEL(_getcontext)) - movl (4 + 4)(%sp),(%sp) /* uc_link */ + movl (4 + UC_LINK)(%sp),(%sp) /* uc_link */ tstl (%sp) /* check for NULL */ jne 1f jbsr PIC_PLT(_C_LABEL(exit)) /* cleanly exit(0) */
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Wed Jul 17 03:05:17 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: swapcontext.S Log Message: Use assym.h To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/lib/libc/arch/m68k/gen/swapcontext.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/swapcontext.S diff -u src/lib/libc/arch/m68k/gen/swapcontext.S:1.5 src/lib/libc/arch/m68k/gen/swapcontext.S:1.6 --- src/lib/libc/arch/m68k/gen/swapcontext.S:1.5 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/swapcontext.S Wed Jul 17 03:05:17 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: swapcontext.S,v 1.5 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: swapcontext.S,v 1.6 2013/07/17 03:05:17 matt Exp $ */ /*- * Copyright (c) 2001 The NetBSD Foundation, Inc. @@ -30,9 +30,10 @@ */ #include SYS.h +#include assym.h #if defined(LIBC_SCCS) !defined(lint) - RCSID($NetBSD: swapcontext.S,v 1.5 2013/07/16 22:12:20 matt Exp $) + RCSID($NetBSD: swapcontext.S,v 1.6 2013/07/17 03:05:17 matt Exp $) #endif /* LIBC_SCCS !lint */ ENTRY(swapcontext) @@ -41,8 +42,8 @@ ENTRY(swapcontext) tstl %d0 | OK? jne L1 movl (%sp),%a0 - addql #8,96(%a0) | adjust saved stack pointer (again) - movl 4(%sp),100(%a0) | adjust saved program counter (again) + addql #8,UC_MCONTEXT_SP(%a0) | adjust saved stack pointer (again) + movl %sp@(4),UC_MCONTEXT_PC(%a0) | adjust saved program counter (again) movl 12(%sp),(%sp) | push ucp on stack jbsr PIC_PLT(_C_LABEL(setcontext)) | setcontext(ucp) L1: addql #4,%sp | pop ucp
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Wed Jul 17 03:05:41 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: setjmp.S Log Message: Use assym.h To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/lib/libc/arch/m68k/gen/setjmp.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/setjmp.S diff -u src/lib/libc/arch/m68k/gen/setjmp.S:1.14 src/lib/libc/arch/m68k/gen/setjmp.S:1.15 --- src/lib/libc/arch/m68k/gen/setjmp.S:1.14 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/setjmp.S Wed Jul 17 03:05:41 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: setjmp.S,v 1.14 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: setjmp.S,v 1.15 2013/07/17 03:05:41 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -34,12 +34,13 @@ */ #include machine/asm.h +#include assym.h #if defined(LIBC_SCCS) !defined(lint) #if 0 RCSID(from: @(#)setjmp.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: setjmp.S,v 1.14 2013/07/16 22:12:20 matt Exp $) + RCSID($NetBSD: setjmp.S,v 1.15 2013/07/17 03:05:41 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -67,11 +68,11 @@ ENTRY(__setjmp14) /* Get pointer to jmp_buf; a sigcontext is at the beginning. */ movl 4(%sp),%a0 - movl %d0,(%a0) /* store onstack */ - clrl 4(%a0) /* unused word (old style signal mask) */ + movl %d0,SC_ONSTACK(%a0) /* store onstack */ + clrl SC___MASK13(%a0) /* unused word (old style signal mask) */ /* Get the signal mask. */ - pea 28(%a0) /* oset = sc.sc_mask */ + pea SC_MASK(%a0) /* oset = sc.sc_mask */ movl #0,-(%sp) /* set = NULL */ movl #0,-(%sp) /* action = 0 ignored */ jbsr PIC_PLT(_C_LABEL(__sigprocmask14)) @@ -79,14 +80,14 @@ ENTRY(__setjmp14) movl 4(%sp),%a0 /* get jmp_buf pointer again */ lea 4(%sp),%a1 /* adjust SP since we won't rts */ - movl %a1,8(%a0) /* save SP */ - movl %a6,12(%a0) /* save FP */ - clrl 16(%a0) /* no AP */ - movl (%sp),20(%a0) /* save return PC */ - clrl 24(%a0) /* clear PS */ + movl %a1,SC_SP(%a0) /* save SP */ + movl %a6,SC_FP(%a0) /* save FP */ + clrl SC_AP(%a0) /* no AP */ + movl (%sp),SC_PC(%a0)/* save return PC */ + clrl SC_PS(%a0) /* clear PS */ /* Save remaining non-scratch regs after signal mask. */ - moveml #0x3CFC,44(%a0) + moveml #0x3CFC,SC_SIZE(%a0) clrl %d0 /* return 0 */ rts
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: matt Date: Wed Jul 17 04:57:55 UTC 2013 Modified Files: src/lib/libc/arch/m68k/gen: alloca.S Log Message: Use a more portable series of instructions. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/lib/libc/arch/m68k/gen/alloca.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/alloca.S diff -u src/lib/libc/arch/m68k/gen/alloca.S:1.8 src/lib/libc/arch/m68k/gen/alloca.S:1.9 --- src/lib/libc/arch/m68k/gen/alloca.S:1.8 Tue Jul 16 22:12:20 2013 +++ src/lib/libc/arch/m68k/gen/alloca.S Wed Jul 17 04:57:55 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: alloca.S,v 1.8 2013/07/16 22:12:20 matt Exp $ */ +/* $NetBSD: alloca.S,v 1.9 2013/07/17 04:57:55 matt Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)alloca.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: alloca.S,v 1.8 2013/07/16 22:12:20 matt Exp $) + RCSID($NetBSD: alloca.S,v 1.9 2013/07/17 04:57:55 matt Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -49,10 +49,11 @@ ENTRY(alloca) movl (%sp),%a1 /* save return addr */ movl %sp,%d0 /* get current SP value */ subl 4(%sp),%d0 /* allocate requested space */ - andb #~3,%d0 /* longword align for efficiency */ + movql #-4,%d1 /* sign extend a mask */ + andl %d1,%d0 /* longword align for efficiency */ addql #8,%d0 /* reuse space of call frame */ movl %d0,%sp /* set new SP value */ - lea -4(%sp),%sp /* account for argument pop in caller */ + subql #4,%sp /* account for argument pop in caller */ #ifdef __SVR4_ABI__ moveal %d0,%a0 #endif
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: he Date: Tue Mar 20 10:40:48 UTC 2012 Modified Files: src/lib/libc/arch/m68k/gen: fpfake.c Log Message: Sprinkle some /* ARGSUSED */ before the dummy functions to appease lint. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/lib/libc/arch/m68k/gen/fpfake.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/fpfake.c diff -u src/lib/libc/arch/m68k/gen/fpfake.c:1.1 src/lib/libc/arch/m68k/gen/fpfake.c:1.2 --- src/lib/libc/arch/m68k/gen/fpfake.c:1.1 Sat Nov 28 23:46:38 2009 +++ src/lib/libc/arch/m68k/gen/fpfake.c Tue Mar 20 10:40:48 2012 @@ -18,18 +18,21 @@ fpgetsticky(void) return 0; } +/* ARGSUSED */ fp_except fpsetmask(fp_except mask) { return 0; } +/* ARGSUSED */ fp_rnd fpsetround(fp_rnd rnd_dir) { return 0; } +/* ARGSUSED */ fp_except fpsetsticky(fp_except sticky) {
CVS commit: src/lib/libc/arch/m68k/gen
Module Name:src Committed By: christos Date: Sun Mar 18 16:26:34 UTC 2012 Modified Files: src/lib/libc/arch/m68k/gen: _lwp.c Log Message: fix lint To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/lib/libc/arch/m68k/gen/_lwp.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/gen/_lwp.c diff -u src/lib/libc/arch/m68k/gen/_lwp.c:1.7 src/lib/libc/arch/m68k/gen/_lwp.c:1.8 --- src/lib/libc/arch/m68k/gen/_lwp.c:1.7 Tue Nov 22 10:25:28 2011 +++ src/lib/libc/arch/m68k/gen/_lwp.c Sun Mar 18 12:26:34 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: _lwp.c,v 1.7 2011/11/22 15:25:28 joerg Exp $ */ +/* $NetBSD: _lwp.c,v 1.8 2012/03/18 16:26:34 christos Exp $ */ /*- * Copyright (c) 2001 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ #include sys/cdefs.h #if defined(LIBC_SCCS) !defined(lint) -__RCSID($NetBSD: _lwp.c,v 1.7 2011/11/22 15:25:28 joerg Exp $); +__RCSID($NetBSD: _lwp.c,v 1.8 2012/03/18 16:26:34 christos Exp $); #endif /* LIBC_SCCS and not lint */ #include namespace.h @@ -55,7 +55,7 @@ _lwp_makecontext(ucontext_t *u, void (*s u-uc_mcontext.__gregs[_REG_PC] = (int)start; - sp = (void **) (stack_base + stack_size); + sp = (void **)(void *)(stack_base + stack_size); *--sp = arg; *--sp = (void *) _lwp_exit;
CVS commit: src/lib/libc/arch/m68k/sys
Module Name:src Committed By: phx Date: Sat Oct 3 22:28:33 UTC 2009 Modified Files: src/lib/libc/arch/m68k/sys: cerror.S Log Message: SystemV-R4 ABI for M68k returns pointers in %a0, so we have to make sure that CERROR returns -1 in %a0 in addition to %d0 and %d1, to make functions like mmap(2), mremap(2), shmat(2) or sbrk(2) return -1 in case of an error. A side effect of this bug was a segfault caused by jemalloc, when mmap() failed. To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/lib/libc/arch/m68k/sys/cerror.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/arch/m68k/sys/cerror.S diff -u src/lib/libc/arch/m68k/sys/cerror.S:1.14 src/lib/libc/arch/m68k/sys/cerror.S:1.15 --- src/lib/libc/arch/m68k/sys/cerror.S:1.14 Thu Aug 7 16:42:14 2003 +++ src/lib/libc/arch/m68k/sys/cerror.S Sat Oct 3 22:28:33 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: cerror.S,v 1.14 2003/08/07 16:42:14 agc Exp $ */ +/* $NetBSD: cerror.S,v 1.15 2009/10/03 22:28:33 phx Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -39,7 +39,7 @@ #if 0 RCSID(from: @(#)cerror.s 5.1 (Berkeley) 5/12/90) #else - RCSID($NetBSD: cerror.S,v 1.14 2003/08/07 16:42:14 agc Exp $) + RCSID($NetBSD: cerror.S,v 1.15 2009/10/03 22:28:33 phx Exp $) #endif #endif /* LIBC_SCCS and not lint */ @@ -80,4 +80,7 @@ #endif /* _REENTRANT */ movl #-1,%d0 movl #-1,%d1 +#ifdef __SVR4_ABI__ + movl %d0,%a0 +#endif rts