Home | History | Annotate | only in /src/lib/libc/arch/sh3
History log of /src/lib/libc/arch/sh3
RevisionDateAuthorComments
 1.9 24-Nov-2021  thorpej Decorate the SuperH signal trampoline with the appropriate .cfi
directives to allow exception unwind / backtrace across a signal
handler.
 1.8 31-Oct-2021  thorpej Tidy up how __sigaction14_sigtramp.c is added to SRCS.
 1.7 22-Mar-2017  chs provide a common softfloat fenv implemenation and use it for softfloat builds.
restore ABI compatibility with previous releases for ieeefp.h on sh3.
add namespace.h protection for all the fenv interfaces.
use MKSOFTFLOAT on sh3 instead of assuming softfloat.
standardize on comparing MKSOFTFLOAT with "no".
remove the arm-specific softfloat fenv code (which also had several bugs).
fix logic errors in the arm hardfloat feraiseexcept() and feupdateenv().
 1.6 17-Jun-2006  uwe branches: 1.6.68; 1.6.72;
G/c KMSRCS and KMINCLUDES now that we have common/lib/libc
 1.5 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.4 23-Nov-2003  uwe Implement siginfo for sh3.
 1.3 10-Jul-2002  thorpej Enable the libc-provided signal trampoline. The old __sigaction14
entry point has been replaced by the new __sigaction14() which is a
wrapper around the __sigaction_sigtramp system call (which is itself
not directly exposed outside of libc).

No shared library version change is necessary; no new symbols
are exposed outside of libc.
 1.2 06-Jun-2000  tsubai branches: 1.2.4;
Add softfloat glue for sh3.
 1.1 05-Jan-2000  msaitoh branches: 1.1.2;
libc for SH3.
TODO: fplib
 1.1.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2.4.1 01-Aug-2002  nathanw Catch up to -current.
 1.6.72.1 21-Apr-2017  bouyer Sync with HEAD
 1.6.68.1 26-Apr-2017  pgoyette Sync with HEAD
 1.11 12-Sep-2013  joerg Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.10 23-Jan-2011  joerg branches: 1.10.4; 1.10.10;
Correctly define inta using a helper macro for the #
 1.9 06-Jan-2006  uwe branches: 1.9.40;
Drop unnecessary nops.
 1.8 06-Jan-2006  uwe Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.7 25-Dec-2005  uwe Be consistent about macro indentation.
Indent delay slot instructions.
Whitespace changes only, same binary code produced.
 1.6 07-Aug-2003  agc branches: 1.6.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 26-May-2002  wiz Revert previous: .S files are currently compiled with -traditional-cpp,
so __STDC__ is _not_ always defined.
 1.3 26-May-2002  wiz __STDC__ is always defined on NetBSD.
 1.2 14-Jan-2002  thorpej * Add WSYSCALL() to SYS.h, which creates a system call with an
internal name and a weak alias for the name.
* Add a WEAKASM syscall list, and process it.
* Make sysarch() have an internal name (_sysarch()).
 1.1 05-Jan-2000  msaitoh branches: 1.1.6;
libc for SH3.
TODO: fplib
 1.1.6.2 21-Jun-2002  nathanw Catch up to -current.
 1.1.6.1 28-Jan-2002  nathanw Catch up to -current.
 1.6.6.3 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.9
Drop unnecessary nops.
 1.6.6.2 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.6.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.7
Be consistent about macro indentation.
Indent delay slot instructions.
Whitespace changes only, same binary code produced.
 1.9.40.1 08-Feb-2011  bouyer Sync with HEAD
 1.10.10.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.4.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1 24-Nov-2021  thorpej Decorate the SuperH signal trampoline with the appropriate .cfi
directives to allow exception unwind / backtrace across a signal
handler.
 1.1 15-Mar-2006  kleink Add strtof(3) and strtold(3); welcome libc 12.137.
 1.1 25-Jan-2006  kleink Add machine-dependent definitions for gdtoa.
 1.1 25-Jan-2006  kleink Add machine-dependent definitions for gdtoa.
 1.26 20-Jan-2014  joerg Use fabs_ieee754.c.
 1.25 06-Dec-2009  uebayasi branches: 1.25.6; 1.25.12;
Rename ${SRCS.{alpha,arm,...}.gen} to ${LSRCS.{alpha,arm,...}.gen} because
they ended up in ${LSRCS}, not ${SRCS}. ${SRCS.*} namespace will be used
for more useful things. No functional changes intended.
 1.24 28-Jun-2006  drochner build frexp/ldexp/modf in the "compat" part (code is identical)
(These are the easy cases where no assembler implementations exist.)
 1.23 17-Jun-2006  uwe G/c KMSRCS and KMINCLUDES now that we have common/lib/libc
 1.22 02-Jun-2006  mrg remove GCC2 support
 1.21 07-Apr-2006  mrg retire HAVE_GCC3/HAVE_GCC4 and introduce HAVE_GCC that is set to 2, 3 or 4.
 1.20 15-Oct-2005  uwe _setjmp and _longjmp are not compat functions. Noticed by Havard Eidnes.
 1.19 15-Sep-2005  uwe Add lint stubs for __setjmp14 and __sigsetjmp14.
 1.18 15-Sep-2005  uwe Switch arch/sh3/gen to the new compat code layout.
 1.17 15-Apr-2005  kleink Push back the descriptions of NaN formats, and descriptions of the
distinction between signalling NaNs and quiet NaNs back into the
machine-dependent headers; treat the implementation of __nanf in the
same spirit.

IEEE 754 leaves the distinction between signalling NaNs and quiet NANs
to the implementation, and unlike our headers used to suggest they're
not identical in the interpretation of the fraction's MSb; in due
course, make those of hppa, mips, sh3, and sh5 reflect reality.
 1.16 04-Mar-2004  kleink branches: 1.16.6;
* Turn isinf(3) and isnan(3) into C99-style macros.
* Make it possible for ports to override these (i.e., VAX).
* Remove isnanl(), which was internal to libc only.
 1.15 22-Feb-2004  uwe In gcc3 world the "millicode" must be provided by libgcc*.a, so don't
include it in libc.
 1.14 15-Jan-2004  kleink Add C99 fpclassify(), isfinite(), isnormal(), and signbit() macros.
 1.13 25-Oct-2003  kleink Add __infinityf and __infinityl, float respectively long double analogs
of __infinity.
 1.12 24-Oct-2003  kleink * Since there is no single portable IEEE 754 format for a long double,
keep a common implementation of isinfl() and isnanl() to be used by
platforms where `long double' == `double'; move others into
machine-dependent code.
* In due course, consider __VFP_FP__ on arm.
 1.11 01-Aug-2003  lukem Rework how dependency generation is performed:

* DPSRCS contains extra dependencies, but is _NOT_ added to CLEANFILES.
This is a change of behaviour. If a Makefile wants the clean semantics
it must specifically append to CLEANFILES.
Resolves PR toolchain/5204.

* To recap: .d (depend) files are generated for all files in SRCS and DPSRCS
that have a suffix of: .c .m .s .S .C .cc .cpp .cxx

* If YHEADER is set, automatically add the .y->.h to DPSRCS & CLEANFILES

* Ensure that ${OBJS} ${POBJS} ${LOBJS} ${SOBJS} *.d depend upon ${DPSRCS}

* Deprecate the (short lived) DEPENDSRCS


Update the various Makefiles to these new semantics; generally either
adding to CLEANFILES (because DPSRCS doesn't do that anymore), or replacing
specific .o dependencies with DPSRCS entries.

Tested with "make -j 8 distribution" and "make distribution".
 1.10 17-May-2003  thorpej Build _isinfl() and _isnanl().
 1.9 12-May-2003  kleink Rename ieee754_function.c to function_ieee754.c, following the convention
used in exec_format.c, loadfile_format.c, subsys_machdep.c etc.
Per discussion with Christos.
 1.8 18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.7 05-Sep-2002  msaitoh Add __movstr_i4_{odd,even} for -m4.
Written by SHIMIZU Ryo.
 1.6 02-Apr-2002  thorpej Remove non-existent ldexp.c from SRCS.
 1.5 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.4 09-Jun-2000  msaitoh branches: 1.4.4;
movstrSI*() for gcc -Os
 1.3 06-Jun-2000  tsubai Add softfloat glue for sh3.
 1.2 17-Jan-2000  kleink branches: 1.2.2;
Add NAN constant glue for sh3.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.4.4.7 07-Oct-2002  thorpej Add missing backslash.
 1.4.4.6 17-Sep-2002  nathanw Catch up to -current.
 1.4.4.5 10-Aug-2002  thorpej Add _lwp.c to SRCS.
 1.4.4.4 22-Jun-2002  thorpej ucontext-related functions. From Klaus Klein.
 1.4.4.3 25-Apr-2002  nathanw Catch up to -current.
 1.4.4.2 22-Mar-2002  nathanw Catch up to -current.
 1.4.4.1 08-Mar-2002  nathanw Catch up to -current.
 1.16.6.1 19-Apr-2005  tron Pull up revision 1.17 (requested by kleink in ticket #163):
Push back the descriptions of NaN formats, and descriptions of the
distinction between signalling NaNs and quiet NaNs back into the
machine-dependent headers; treat the implementation of __nanf in the
same spirit.
IEEE 754 leaves the distinction between signalling NaNs and quiet NANs
to the implementation, and unlike our headers used to suggest they're
not identical in the interpretation of the fraction's MSb; in due
course, make those of hppa, mips, sh3, and sh5 reflect reality.
 1.25.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.25.6.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.7 15-Sep-2005  uwe Switch arch/sh3/gen to the new compat code layout.
 1.6 07-Aug-2003  agc branches: 1.6.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 14-Feb-2001  msaitoh branches: 1.3.2;
use _C_LABEL()
 1.2 04-Aug-2000  tsubai Change comment character from '#' to '!'. (binutils-2.10 doesn't like '#')
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.6.6.1 22-Jan-2006  tron Apply patch (requested by uwe in ticket #1100):
Use PLT for PIC calls to avoids text relocs in the shared library.
 1.7 15-Sep-2005  uwe Switch arch/sh3/gen to the new compat code layout.
 1.6 07-Aug-2003  agc branches: 1.6.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 14-Feb-2001  msaitoh branches: 1.3.2;
use _C_LABEL()
 1.2 04-Aug-2000  tsubai Change comment character from '#' to '!'. (binutils-2.10 doesn't like '#')
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.6.6.1 22-Jan-2006  tron Apply patch (requested by uwe in ticket #1100):
Use PLT for PIC calls to avoids text relocs in the shared library.
 1.6 22-Mar-2012  he Follow the pattern from powerpc, make lint happy.
 1.5 24-Feb-2011  joerg branches: 1.5.4;
Allow storing and receiving the LWP private pointer via ucontext_t
on all platforms except VAX and IA64. Add fast access via register for
AMD64, i386 and SH3 ports. Use this fast access in libpthread to replace
the stack based pthread_self(). Implement skeleton support for Alpha,
HPPA, PowerPC, SPARC and SPARC64, but leave it disabled.

Ports that support this feature provide __HAVE____LWP_GETPRIVATE_FAST in
machine/types.h and a corresponding __lwp_getprivate_fast in
machine/mcontext.h.

This material is based upon work partially supported by
The NetBSD Foundation under a contract with Joerg Sonnenberger.
 1.4 12-Jun-2005  lukem branches: 1.4.40;
Add missing __RCSID()
 1.3 07-Apr-2003  kleink Make sure we reference getcontext() by its internal name.
 1.2 18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.1 10-Aug-2002  thorpej branches: 1.1.2;
file _lwp.c was initially added on branch nathanw_sa.
 1.1.2.1 10-Aug-2002  thorpej LWP routines for sh3.
 1.4.40.1 05-Mar-2011  bouyer Sync with HEAD
 1.5.4.1 17-Apr-2012  yamt sync with head
 1.7 05-Jan-2006  uwe Use SET_ENTRY_SIZE macro to hide verbose .size arithmetic.
 1.6 05-Jan-2006  uwe Use constants from <machine/setjmp.h> for better readability.
 1.5 05-Jan-2006  uwe Add .size directives.
While here, indent instructions in the rts delay slots.
 1.4 15-Oct-2005  uwe _setjmp and _longjmp are not compat functions. Noticed by Havard Eidnes.
 1.3 15-Sep-2005  uwe Switch arch/sh3/gen to the new compat code layout.
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.6 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.5 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.4 22-Sep-2003  uwe Indent delay slots. Whitespace change only, same object code produced.
 1.3 14-Feb-2001  msaitoh don't profile (use NENTRY() and ALTENTRY())
 1.2 14-Feb-2001  msaitoh use _C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.5 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.4 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.3 22-Sep-2003  uwe Do not profile. Indent delay slot.
 1.2 14-Feb-2001  msaitoh use _C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.5 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.4 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.3 22-Sep-2003  uwe Do not profile. Indent delay slot.
 1.2 14-Feb-2001  msaitoh use _C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.4 20-Jan-2014  joerg Use fabs_ieee754.c.
 1.3 21-May-2006  mrg branches: 1.3.44; 1.3.50;
add a local prototype for fabs()
 1.2 26-May-2002  wiz __STDC__ is always defined on NetBSD.
 1.1 05-Jan-2000  msaitoh branches: 1.1.6;
libc for SH3.
TODO: fplib
 1.1.6.1 21-Jun-2002  nathanw Catch up to -current.
 1.3.50.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.44.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.8 08-Apr-2022  andvar fix various typos, mainly in comments, but also log messages, docs, game text.
 1.7 11-Mar-2017  chs fix the mapping table. this sh3 version was originally copied from arm,
but FP_RP and FP_RM have opposite values on sh3 vs. arm.
 1.6 19-Mar-2015  joerg branches: 1.6.2; 1.6.4;
Call libc's fpgetround.
 1.5 22-Mar-2012  he branches: 1.5.10;
Add a void to make function declaration c89.
 1.4 17-Jan-2007  hubertf branches: 1.4.36;
Remove more duplicate #includes, and a few spurious whitespaces at EOL
From Slava Semushin <slava.semushin@gmail.com>
 1.3 25-Feb-2006  wiz Fix some typos.
 1.2 12-Jun-2005  lukem Add missing __RCSID()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.4.36.1 17-Apr-2012  yamt sync with head
 1.5.10.1 21-Mar-2015  snj Pull up following revision(s) (requested by joerg in ticket #632):
lib/libc/arch/arm/gen/flt_rounds.c: revision 1.5
lib/libc/arch/mips/gen/flt_rounds.c: revision 1.9
lib/libc/arch/powerpc/gen/flt_rounds.c: revision 1.12
lib/libc/arch/powerpc64/gen/flt_rounds.c: revision 1.2
lib/libc/arch/sh3/gen/flt_rounds.c: revision 1.6
Call libc's fpgetround.
 1.6.4.1 21-Apr-2017  bouyer Sync with HEAD
 1.6.2.1 20-Mar-2017  pgoyette Sync with HEAD
 1.2 06-Jun-2000  tsubai Add softfloat glue for sh3.
 1.1 05-Jan-2000  msaitoh branches: 1.1.2;
libc for SH3.
TODO: fplib
 1.1.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2 06-Jun-2000  tsubai Add softfloat glue for sh3.
 1.1 05-Jan-2000  msaitoh branches: 1.1.2;
libc for SH3.
TODO: fplib
 1.1.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2 06-Jun-2000  tsubai Add softfloat glue for sh3.
 1.1 05-Jan-2000  msaitoh branches: 1.1.2;
libc for SH3.
TODO: fplib
 1.1.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2 06-Jun-2000  tsubai Add softfloat glue for sh3.
 1.1 05-Jan-2000  msaitoh branches: 1.1.2;
libc for SH3.
TODO: fplib
 1.1.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2 06-Jun-2000  tsubai Add softfloat glue for sh3.
 1.1 05-Jan-2000  msaitoh branches: 1.1.2;
libc for SH3.
TODO: fplib
 1.1.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2 06-Jun-2000  tsubai Add softfloat glue for sh3.
 1.1 05-Jan-2000  msaitoh branches: 1.1.2;
libc for SH3.
TODO: fplib
 1.1.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.1 05-Jan-2000  msaitoh branches: 1.1.6;
libc for SH3.
TODO: fplib
 1.1.6.1 08-Mar-2002  nathanw Catch up to -current.
 1.4 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.3 13-Sep-2000  msaitoh branches: 1.3.2;
check LIBC_SCCS
 1.2 17-Jan-2000  kleink Adjust for little endian environments (confirmed by msaitoh).
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Mar-2002  nathanw Catch up to -current.
 1.3 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.2 22-Jan-2000  mycroft branches: 1.2.6;
Delint.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.6.1 08-Mar-2002  nathanw Catch up to -current.
 1.3 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.2 22-Jan-2000  mycroft branches: 1.2.6;
Delint.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.6.1 08-Mar-2002  nathanw Catch up to -current.
 1.3 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.2 10-Dec-2001  msaitoh sync with other archs.

Important fixes:

> ldexp(denormal, exp>1023) would generate the wrong result in all non-overflow
> cases. Totally rework this code to fix this bug *and* make it faster.

> Don't ever return -0.0.
 1.1 05-Jan-2000  msaitoh branches: 1.1.6;
libc for SH3.
TODO: fplib
 1.1.6.2 08-Mar-2002  nathanw Catch up to -current.
 1.1.6.1 28-Jan-2002  nathanw Catch up to -current.
 1.5 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.4 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.3 22-Sep-2003  uwe Do not profile. Indent delay slot.
 1.2 14-Feb-2001  msaitoh use _C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.4 28-Apr-2008  martin branches: 1.4.8;
Remove clause 3 and 4 from TNF licenses
 1.3 23-Jun-2003  uwe branches: 1.3.30;
Registers _REG_Ri defines are numbered backwards, so when we fill
r4-r7 with arguments, use the correct *minus* i to compute the i-th
register index.
 1.2 18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.1 22-Jun-2002  thorpej branches: 1.1.2;
file makecontext.c was initially added on branch nathanw_sa.
 1.1.2.1 22-Jun-2002  thorpej ucontext-related functions. From Klaus Klein.
 1.3.30.1 18-May-2008  yamt sync with head.
 1.4.8.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.4.8.1 28-Apr-2008  martin file makecontext.c was added on branch christos-time_t on 2008-04-28 20:22:58 +0000
 1.4 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.3 14-Jun-2000  cgd branches: 1.3.4;
fix up NetBSD RCS Ids to match the standard, and the leading comment as
to match as well. No functional changes.
 1.2 13-Mar-2000  soren branches: 1.2.2;
Fix doubled 'the's.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.3.4.1 08-Mar-2002  nathanw Catch up to -current.
 1.6 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.5 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.4 22-Sep-2003  uwe Do not profile. Indent delay slot.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 14-Feb-2001  msaitoh branches: 1.2.2;
use _C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.7 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.6 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.5 22-Sep-2003  uwe Indent delay slot.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 14-Feb-2001  msaitoh branches: 1.3.2;
don't profile (use NENTRY() and ALTENTRY())
 1.2 14-Feb-2001  msaitoh use _C_LABEL()
 1.1 09-Jun-2000  msaitoh branches: 1.1.4;
movstrSI*() for gcc -Os
 1.1.4.2 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.1.4.1 09-Jun-2000  minoura file movstrSI.S was added on branch minoura-xpg4dl on 2000-06-23 16:17:17 +0000
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.4 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.3 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.2 22-Sep-2003  uwe Do not profile. Indent delay slots.
 1.1 05-Sep-2002  msaitoh branches: 1.1.2;
Add __movstr_i4_{odd,even} for -m4.
Written by SHIMIZU Ryo.
 1.1.2.2 17-Sep-2002  nathanw Catch up to -current.
 1.1.2.1 05-Sep-2002  nathanw file movstr_i4.S was added on branch nathanw_sa on 2002-09-17 21:32:44 +0000
 1.5 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.4 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.3 22-Sep-2003  uwe Do not profile. Indent delay slot.
 1.2 14-Feb-2001  msaitoh use _C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.4 22-Feb-2009  martin Make NAN a compile time constant (with help from the compiler). Suggested
by krister. Fixes PR 40695.
Make references to the old construct (which we can't remove for binary
compatibility reasons) emit a linker warning.
 1.3 15-Apr-2005  kleink branches: 1.3.2; 1.3.32;
Push back the descriptions of NaN formats, and descriptions of the
distinction between signalling NaNs and quiet NaNs back into the
machine-dependent headers; treat the implementation of __nanf in the
same spirit.

IEEE 754 leaves the distinction between signalling NaNs and quiet NANs
to the implementation, and unlike our headers used to suggest they're
not identical in the interpretation of the fraction's MSb; in due
course, make those of hppa, mips, sh3, and sh5 reflect reality.
 1.2 19-Feb-2002  simonb Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
- Use the above for the __infinity and __nan constants on all
architectures that use the standard ieee754 representation of
those constants.
- Add a single copy of various ieee754 math functions (frexp, isinf,
isnan, ldexp and modf) that had numerous duplicates among the
arch-specific directories.
- Use the above functions on all architectures where the generic C
versions where used. Architectures that had local assembly
routines are untouched (for those functions only).
 1.1 17-Jan-2000  kleink branches: 1.1.6;
Add NAN constant glue for sh3.
 1.1.6.1 08-Mar-2002  nathanw Catch up to -current.
 1.3.32.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.3.2.2 19-Apr-2005  tron Pull up revision 1.3 (requested by kleink in ticket #163):
Push back the descriptions of NaN formats, and descriptions of the
distinction between signalling NaNs and quiet NaNs back into the
machine-dependent headers; treat the implementation of __nanf in the
same spirit.
IEEE 754 leaves the distinction between signalling NaNs and quiet NANs
to the implementation, and unlike our headers used to suggest they're
not identical in the interpretation of the fraction's MSb; in due
course, make those of hppa, mips, sh3, and sh5 reflect reality.
 1.3.2.1 15-Apr-2005  tron file nanf.c was added on branch netbsd-3 on 2005-04-19 12:30:51 +0000
 1.5 19-Sep-2011  joerg Mark _resumecontext as dead. ANSIfy all declarations for it.
 1.4 28-Apr-2008  martin branches: 1.4.8;
Remove clause 3 and 4 from TNF licenses
 1.3 08-Dec-2006  martin branches: 1.3.10;
Sync all resumecontext.c versions with the changes originally made
by Matthias Drochner to i386 and alpha:

-check for a NULL uc_link before calling setcontext(2); do a real exit(3)
instead with exit handlers and all that
-If setcontext(2) returns (which it shouldn't), do an _exit(-1) rather
than relying on a sensible return value to use as exit code. Makes
it less likely that an ucontext corruption goes unnoticed.
 1.2 18-Jan-2003  thorpej branches: 1.2.16;
Merge the nathanw_sa branch.
 1.1 22-Jun-2002  thorpej branches: 1.1.2;
file resumecontext.c was initially added on branch nathanw_sa.
 1.1.2.1 22-Jun-2002  thorpej ucontext-related functions. From Klaus Klein.
 1.2.16.1 09-Dec-2006  bouyer Pull up following revision(s) (requested by martin in ticket #264):
lib/libc/arch/sh5/gen/resumecontext.c: revision 1.2
lib/libc/arch/sh3/gen/resumecontext.c: revision 1.3
lib/libc/arch/sparc/gen/resumecontext.c: revision 1.3
lib/libc/arch/powerpc/gen/resumecontext.c: revision 1.3
lib/libc/arch/arm/gen/resumecontext.c: revision 1.3
lib/libc/arch/mips/gen/resumecontext.c: revision 1.3
lib/libc/arch/vax/gen/resumecontext.c: revision 1.2
lib/libc/arch/powerpc64/gen/resumecontext.c: revision 1.2
lib/libc/arch/hppa/gen/resumecontext.c: revision 1.2
Sync all resumecontext.c versions with the changes originally made
by Matthias Drochner to i386 and alpha:
-check for a NULL uc_link before calling setcontext(2); do a real exit(3)
instead with exit handlers and all that
-If setcontext(2) returns (which it shouldn't), do an _exit(-1) rather
than relying on a sensible return value to use as exit code. Makes
it less likely that an ucontext corruption goes unnoticed.
 1.3.10.1 18-May-2008  yamt sync with head.
 1.4.8.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.4.8.1 28-Apr-2008  martin file resumecontext.c was added on branch christos-time_t on 2008-04-28 20:22:58 +0000
 1.9 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.8 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.7 22-Sep-2003  uwe Indent delay slots. Add a comment that the magic number 8 is SIGFPE.
 1.6 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 14-Feb-2001  msaitoh branches: 1.3.2;
use _C_LABEL()
 1.2 14-Jan-2000  msaitoh sync with libkern
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.12 17-Jul-2024  uwe sh3: siglongjmp - restore register context first (PR lib/57946)
 1.11 11-Oct-2023  skrll branches: 1.11.2;
Consistently pass 0 as first and ignored argument to sigprocmask in the
setjmp implementations.

NFCI.
 1.10 05-Jan-2006  uwe branches: 1.10.88; 1.10.96;
Use PIC_PROLOGUE_NOSAVE in long jumps, where we don't need to preserve r12.
While here, swap the order in which r4 and r5 saved on the stack so
that r4 is restored further away from its first use.
 1.9 05-Jan-2006  uwe Oops, supply correct label for __longjmp14 .size directive.
 1.8 05-Jan-2006  uwe Use PLT for PIC calls to avoids text relocs in the shared library.
Use constants from <machine/setjmp.h> for better readability.
Provide .size directives.
 1.7 15-Sep-2005  uwe Switch arch/sh3/gen to the new compat code layout.
 1.6 07-Aug-2003  agc branches: 1.6.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 14-Feb-2001  msaitoh branches: 1.3.2;
use _C_LABEL()
 1.2 04-Aug-2000  tsubai Change comment character from '#' to '!'. (binutils-2.10 doesn't like '#')
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.6.6.1 22-Jan-2006  tron Apply patch (requested by uwe in ticket #1100):
Use PLT for PIC calls to avoids text relocs in the shared library.
 1.10.96.1 23-Aug-2024  martin Pull up following revision(s) (requested by riastradh in ticket #795):

tests/lib/libc/setjmp/Makefile: revision 1.3
distrib/sets/lists/debug/mi: revision 1.425
lib/libc/arch/sh3/gen/setjmp.S: revision 1.12
lib/libc/arch/i386/gen/sigsetjmp.S: revision 1.19
lib/libc/arch/x86_64/gen/__setjmp14.S: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.10
tests/lib/libc/setjmp/t_sigstack.c: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.12
tests/lib/libc/setjmp/t_sigstack.c: revision 1.1
lib/libc/arch/sh3/gen/sigsetjmp.S: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.2
tests/lib/libc/setjmp/t_sigstack.c: revision 1.3
tests/lib/libc/setjmp/t_sigstack.c: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.5
tests/lib/libc/setjmp/t_sigstack.c: revision 1.6
lib/libc/arch/arm/gen/setjmp.S: revision 1.19
tests/lib/libc/setjmp/t_sigstack.c: revision 1.7
tests/lib/libc/setjmp/t_sigstack.c: revision 1.8
tests/lib/libc/setjmp/t_sigstack.c: revision 1.9
lib/libc/arch/i386/gen/setjmp.S: revision 1.18
lib/libc/arch/x86_64/gen/__sigsetjmp14.S: revision 1.4
distrib/sets/lists/tests/mi: revision 1.1306

longjmp(3): Add test for PR lib/57946.

longjmp(3): Paranoia: more error checking in PR lib/57946 test.

longjmp(3): Test signal mask vs stack restore with siglongjmp too.
PR lib/57946

longjmp(3) t_sigstack: Print which entry failed.
PR lib/57946

longjmp(3) t_sigstack: Note aarch64 seems to DTRT.
But only by code inspection; it appears to have another problem: on
re-entry, the signal handler is called on the normal stack, not on
the alternate signal stack.
PR lib/57946

longjmp(3) t_sigstack: Use a sigaltstack per handler entry.
longjmp evidently doesn't reset the state of whether the process is
executing on the alternate signal stack. So when we re-enter the
signal handler, the alternate stack appears to be still in use, and
the system chooses the original stack for the second call to the
signal handler -- which trips our assertion asking to verify that the
signal handler is always using an alternate stack.

Not strictly necessary for the signal handler to use an alternate
stack on re-entry, but this makes it clearer that the signal handler
itself is always using the alternate stack so we can verify that the
interrupted code is _not_ in the signal handler.
With this change, the test now passes on aarch64.
PR lib/57946

longjmp(3) t_sigstack: Fix fencepost error.
Extremely unlikely to cause trouble, but let's just turn that into
`never' to keep it easier for readers.
PR lib/57946

amd64 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use `xorl %eXX,%eXX' instead of `xorq %rXX,%rXX'.
=> Same effect, one byte shorter, breaks dep chain on more uarches.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

i386 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

arm longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Move the botched sp and lr tests earlier.
PR lib/57946
arm has been fixed

tests/lib/libc/setjmp/t_sigstack: Add missing comment for 1.10.
PR lib/57946

sh3: siglongjmp - restore register context first (PR lib/57946)
 1.10.88.1 23-Aug-2024  martin Pull up following revision(s) (requested by riastradh in ticket #795):

tests/lib/libc/setjmp/Makefile: revision 1.3
distrib/sets/lists/debug/mi: revision 1.425
lib/libc/arch/sh3/gen/setjmp.S: revision 1.12
lib/libc/arch/i386/gen/sigsetjmp.S: revision 1.19
lib/libc/arch/x86_64/gen/__setjmp14.S: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.10
tests/lib/libc/setjmp/t_sigstack.c: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.12
tests/lib/libc/setjmp/t_sigstack.c: revision 1.1
lib/libc/arch/sh3/gen/sigsetjmp.S: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.2
tests/lib/libc/setjmp/t_sigstack.c: revision 1.3
tests/lib/libc/setjmp/t_sigstack.c: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.5
tests/lib/libc/setjmp/t_sigstack.c: revision 1.6
lib/libc/arch/arm/gen/setjmp.S: revision 1.19
tests/lib/libc/setjmp/t_sigstack.c: revision 1.7
tests/lib/libc/setjmp/t_sigstack.c: revision 1.8
tests/lib/libc/setjmp/t_sigstack.c: revision 1.9
lib/libc/arch/i386/gen/setjmp.S: revision 1.18
lib/libc/arch/x86_64/gen/__sigsetjmp14.S: revision 1.4
distrib/sets/lists/tests/mi: revision 1.1306 (patch)

longjmp(3): Add test for PR lib/57946.

longjmp(3): Paranoia: more error checking in PR lib/57946 test.

longjmp(3): Test signal mask vs stack restore with siglongjmp too.
PR lib/57946

longjmp(3) t_sigstack: Print which entry failed.
PR lib/57946

longjmp(3) t_sigstack: Note aarch64 seems to DTRT.
But only by code inspection; it appears to have another problem: on
re-entry, the signal handler is called on the normal stack, not on
the alternate signal stack.
PR lib/57946

longjmp(3) t_sigstack: Use a sigaltstack per handler entry.
longjmp evidently doesn't reset the state of whether the process is
executing on the alternate signal stack. So when we re-enter the
signal handler, the alternate stack appears to be still in use, and
the system chooses the original stack for the second call to the
signal handler -- which trips our assertion asking to verify that the
signal handler is always using an alternate stack.

Not strictly necessary for the signal handler to use an alternate
stack on re-entry, but this makes it clearer that the signal handler
itself is always using the alternate stack so we can verify that the
interrupted code is _not_ in the signal handler.
With this change, the test now passes on aarch64.
PR lib/57946

longjmp(3) t_sigstack: Fix fencepost error.
Extremely unlikely to cause trouble, but let's just turn that into
`never' to keep it easier for readers.
PR lib/57946

amd64 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use `xorl %eXX,%eXX' instead of `xorq %rXX,%rXX'.
=> Same effect, one byte shorter, breaks dep chain on more uarches.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

i386 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

arm longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Move the botched sp and lr tests earlier.
PR lib/57946
arm has been fixed

tests/lib/libc/setjmp/t_sigstack: Add missing comment for 1.10.
PR lib/57946

sh3: siglongjmp - restore register context first (PR lib/57946)
 1.11.2.1 02-Aug-2025  perseant Sync with HEAD
 1.11 17-Jul-2024  uwe sh3: siglongjmp - restore register context first (PR lib/57946)
 1.10 11-Oct-2023  skrll branches: 1.10.2;
Consistently pass 0 as first and ignored argument to sigprocmask in the
setjmp implementations.

NFCI.
 1.9 05-Jan-2006  uwe branches: 1.9.88; 1.9.96;
Use PIC_PROLOGUE_NOSAVE in long jumps, where we don't need to preserve r12.
While here, swap the order in which r4 and r5 saved on the stack so
that r4 is restored further away from its first use.
 1.8 05-Jan-2006  uwe Use PLT for PIC calls to avoids text relocs in the shared library.
Use constants from <machine/setjmp.h> for better readability.
Provide .size directives.
 1.7 15-Sep-2005  uwe Switch arch/sh3/gen to the new compat code layout.
 1.6 07-Aug-2003  agc branches: 1.6.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 14-Feb-2001  msaitoh branches: 1.3.2;
use _C_LABEL()
 1.2 04-Aug-2000  tsubai Change comment character from '#' to '!'. (binutils-2.10 doesn't like '#')
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.6.6.1 22-Jan-2006  tron Apply patch (requested by uwe in ticket #1100):
Use PLT for PIC calls to avoids text relocs in the shared library.
 1.9.96.1 23-Aug-2024  martin Pull up following revision(s) (requested by riastradh in ticket #795):

tests/lib/libc/setjmp/Makefile: revision 1.3
distrib/sets/lists/debug/mi: revision 1.425
lib/libc/arch/sh3/gen/setjmp.S: revision 1.12
lib/libc/arch/i386/gen/sigsetjmp.S: revision 1.19
lib/libc/arch/x86_64/gen/__setjmp14.S: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.10
tests/lib/libc/setjmp/t_sigstack.c: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.12
tests/lib/libc/setjmp/t_sigstack.c: revision 1.1
lib/libc/arch/sh3/gen/sigsetjmp.S: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.2
tests/lib/libc/setjmp/t_sigstack.c: revision 1.3
tests/lib/libc/setjmp/t_sigstack.c: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.5
tests/lib/libc/setjmp/t_sigstack.c: revision 1.6
lib/libc/arch/arm/gen/setjmp.S: revision 1.19
tests/lib/libc/setjmp/t_sigstack.c: revision 1.7
tests/lib/libc/setjmp/t_sigstack.c: revision 1.8
tests/lib/libc/setjmp/t_sigstack.c: revision 1.9
lib/libc/arch/i386/gen/setjmp.S: revision 1.18
lib/libc/arch/x86_64/gen/__sigsetjmp14.S: revision 1.4
distrib/sets/lists/tests/mi: revision 1.1306

longjmp(3): Add test for PR lib/57946.

longjmp(3): Paranoia: more error checking in PR lib/57946 test.

longjmp(3): Test signal mask vs stack restore with siglongjmp too.
PR lib/57946

longjmp(3) t_sigstack: Print which entry failed.
PR lib/57946

longjmp(3) t_sigstack: Note aarch64 seems to DTRT.
But only by code inspection; it appears to have another problem: on
re-entry, the signal handler is called on the normal stack, not on
the alternate signal stack.
PR lib/57946

longjmp(3) t_sigstack: Use a sigaltstack per handler entry.
longjmp evidently doesn't reset the state of whether the process is
executing on the alternate signal stack. So when we re-enter the
signal handler, the alternate stack appears to be still in use, and
the system chooses the original stack for the second call to the
signal handler -- which trips our assertion asking to verify that the
signal handler is always using an alternate stack.

Not strictly necessary for the signal handler to use an alternate
stack on re-entry, but this makes it clearer that the signal handler
itself is always using the alternate stack so we can verify that the
interrupted code is _not_ in the signal handler.
With this change, the test now passes on aarch64.
PR lib/57946

longjmp(3) t_sigstack: Fix fencepost error.
Extremely unlikely to cause trouble, but let's just turn that into
`never' to keep it easier for readers.
PR lib/57946

amd64 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use `xorl %eXX,%eXX' instead of `xorq %rXX,%rXX'.
=> Same effect, one byte shorter, breaks dep chain on more uarches.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

i386 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

arm longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Move the botched sp and lr tests earlier.
PR lib/57946
arm has been fixed

tests/lib/libc/setjmp/t_sigstack: Add missing comment for 1.10.
PR lib/57946

sh3: siglongjmp - restore register context first (PR lib/57946)
 1.9.88.1 23-Aug-2024  martin Pull up following revision(s) (requested by riastradh in ticket #795):

tests/lib/libc/setjmp/Makefile: revision 1.3
distrib/sets/lists/debug/mi: revision 1.425
lib/libc/arch/sh3/gen/setjmp.S: revision 1.12
lib/libc/arch/i386/gen/sigsetjmp.S: revision 1.19
lib/libc/arch/x86_64/gen/__setjmp14.S: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.10
tests/lib/libc/setjmp/t_sigstack.c: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.12
tests/lib/libc/setjmp/t_sigstack.c: revision 1.1
lib/libc/arch/sh3/gen/sigsetjmp.S: revision 1.11
tests/lib/libc/setjmp/t_sigstack.c: revision 1.2
tests/lib/libc/setjmp/t_sigstack.c: revision 1.3
tests/lib/libc/setjmp/t_sigstack.c: revision 1.4
tests/lib/libc/setjmp/t_sigstack.c: revision 1.5
tests/lib/libc/setjmp/t_sigstack.c: revision 1.6
lib/libc/arch/arm/gen/setjmp.S: revision 1.19
tests/lib/libc/setjmp/t_sigstack.c: revision 1.7
tests/lib/libc/setjmp/t_sigstack.c: revision 1.8
tests/lib/libc/setjmp/t_sigstack.c: revision 1.9
lib/libc/arch/i386/gen/setjmp.S: revision 1.18
lib/libc/arch/x86_64/gen/__sigsetjmp14.S: revision 1.4
distrib/sets/lists/tests/mi: revision 1.1306 (patch)

longjmp(3): Add test for PR lib/57946.

longjmp(3): Paranoia: more error checking in PR lib/57946 test.

longjmp(3): Test signal mask vs stack restore with siglongjmp too.
PR lib/57946

longjmp(3) t_sigstack: Print which entry failed.
PR lib/57946

longjmp(3) t_sigstack: Note aarch64 seems to DTRT.
But only by code inspection; it appears to have another problem: on
re-entry, the signal handler is called on the normal stack, not on
the alternate signal stack.
PR lib/57946

longjmp(3) t_sigstack: Use a sigaltstack per handler entry.
longjmp evidently doesn't reset the state of whether the process is
executing on the alternate signal stack. So when we re-enter the
signal handler, the alternate stack appears to be still in use, and
the system chooses the original stack for the second call to the
signal handler -- which trips our assertion asking to verify that the
signal handler is always using an alternate stack.

Not strictly necessary for the signal handler to use an alternate
stack on re-entry, but this makes it clearer that the signal handler
itself is always using the alternate stack so we can verify that the
interrupted code is _not_ in the signal handler.
With this change, the test now passes on aarch64.
PR lib/57946

longjmp(3) t_sigstack: Fix fencepost error.
Extremely unlikely to cause trouble, but let's just turn that into
`never' to keep it easier for readers.
PR lib/57946

amd64 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use `xorl %eXX,%eXX' instead of `xorq %rXX,%rXX'.
=> Same effect, one byte shorter, breaks dep chain on more uarches.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

i386 longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Tidy the code a little bit.
- Sprinkle comments to explain what's going on.
- Use forward branches for statically predicted not-taken.
=> val==0 is unlikely in longjmp
PR lib/57946

arm longjmp: Restore stack first, then signal mask.
Otherwise, a pending signal may be delivered on the wrong stack when
we restore the signal mask.

While here:
- Move the botched sp and lr tests earlier.
PR lib/57946
arm has been fixed

tests/lib/libc/setjmp/t_sigstack: Add missing comment for 1.10.
PR lib/57946

sh3: siglongjmp - restore register context first (PR lib/57946)
 1.10.2.1 02-Aug-2025  perseant Sync with HEAD
 1.12 06-Apr-2015  uwe On swapcontext(3) preserve r12 too. Properly fixes PR port-sh3/49597.
 1.11 25-Jan-2015  uwe Adjust _UC_MACHINE_SP(oucp) to "drop" values we pushed to the stack.
t_swapcontext tests pass now with gcc 4.8.

From Yasushi Oshima in PR port-sh3/49597
 1.10 12-Sep-2013  joerg branches: 1.10.4;
Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.9 28-Apr-2008  martin branches: 1.9.4; 1.9.6; 1.9.8; 1.9.24; 1.9.28;
Remove clause 3 and 4 from TNF licenses
 1.8 05-Jan-2006  uwe branches: 1.8.18;
Add .size directive.
 1.7 05-Jan-2006  uwe PIC_PROLOGUE doesn't take temp register argument, adjust.
 1.6 04-Jan-2006  uwe Use PLT for PIC calls. Makes the called functions overridable and
avoids text reloc in the shared library.
Same non-PIC code generated.
 1.5 04-Jan-2006  uwe Took me some time to figure that getcontext does _UC_MACHINE_INTRV(oucp) = 0
for us, so add a comment. While here use official _UC_MACHINE_SET_PC
macro in another comment.
 1.4 04-Jan-2006  uwe Use macros from <machine/asm.h>. s/r15/sp/. Use cpp-safe label
names. Add comments. Same object code is generated.
 1.3 01-Jul-2003  marcus branches: 1.3.6;
Generate proper PIC code for libc_pic.a.
 1.2 20-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.1 22-Jun-2002  thorpej branches: 1.1.2;
file swapcontext.S was initially added on branch nathanw_sa.
 1.1.2.1 22-Jun-2002  thorpej ucontext-related functions. From Klaus Klein.
 1.3.6.5 11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1096):
lib/libc/arch/sh3/gen/swapcontext.S: revision 1.8
Add .size directive.
 1.3.6.4 11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1096):
lib/libc/arch/sh3/gen/swapcontext.S: revision 1.7
PIC_PROLOGUE doesn't take temp register argument, adjust.
 1.3.6.3 11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1096):
lib/libc/arch/sh3/gen/swapcontext.S: revision 1.6
Use PLT for PIC calls. Makes the called functions overridable and
avoids text reloc in the shared library.
Same non-PIC code generated.
 1.3.6.2 11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1096):
lib/libc/arch/sh3/gen/swapcontext.S: revision 1.5
Took me some time to figure that getcontext does _UC_MACHINE_INTRV(oucp) = 0
for us, so add a comment. While here use official _UC_MACHINE_SET_PC
macro in another comment.
 1.3.6.1 11-Jan-2006  tron Pull up following revision(s) (requested by uew in ticket #1096):
lib/libc/arch/sh3/gen/swapcontext.S: revision 1.4
Use macros from <machine/asm.h>. s/r15/sp/. Use cpp-safe label
names. Add comments. Same object code is generated.
 1.8.18.1 18-May-2008  yamt sync with head.
 1.9.28.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.9.24.1 19-Apr-2015  msaitoh Pull up following revision(s) (requested by uwe in ticket #1294):

lib/libc/arch/sh3/gen/swapcontext.S 1.11-1.12 via patch

Correctly preserve old sate in swapcontext(3).
Fixes PR port-sh3/49597 reported by Yasushi Oshima.
 1.9.8.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.9.8.1 28-Apr-2008  martin file swapcontext.S was added on branch christos-time_t on 2008-04-28 20:22:58 +0000
 1.9.6.1 19-Apr-2015  msaitoh Pull up following revision(s) (requested by uwe in ticket #1960):

lib/libc/arch/sh3/gen/swapcontext.S 1.11-1.12 via patch

Correctly preserve old sate in swapcontext(3).
Fixes PR port-sh3/49597 reported by Yasushi Oshima.
 1.9.4.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.10.4.1 19-Apr-2015  msaitoh Pull up following revision(s) (requested by uwe in ticket #709):
lib/libc/arch/sh3/gen/swapcontext.S: revision 1.11
lib/libc/arch/sh3/gen/swapcontext.S: revision 1.12
- Adjust _UC_MACHINE_SP(oucp) to "drop" values we pushed to the stack.
t_swapcontext tests pass now with gcc 4.8. From Yasushi Oshima in
PR port-sh3/49597.
- On swapcontext(3) preserve r12 too. Properly fixes PR port-sh3/49597.
 1.8 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.7 27-Mar-2004  uwe Mark gcc "millicode" functions .hidden if compiled for PIC. NB: these
files are *NOT* used, as we now provide gcc's version of millicode in
libgcc_pic.
 1.6 27-Aug-2003  uwe Add a comment that explains that

. this function cannot have _PROF_PROLOGUE
. this function cannot be called via PLT

Change ENTRY to NENTRY for the former.

XXX: The latter is important in the gcc3 world, that have shared
libraries. We will need to play tricks with .hidden to make sure
every shared library gets its own private __udivsi3 that it can call
directly, without going through the PLT.
 1.5 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 14-Feb-2001  msaitoh branches: 1.2.2;
use _C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3 24-Dec-2005  perry __asm__ -> __asm
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3 24-Dec-2005  perry __asm__ -> __asm
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3 24-Dec-2005  perry __asm__ -> __asm
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3 24-Dec-2005  perry __asm__ -> __asm
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.1 06-Jun-2000  tsubai branches: 1.1.4;
Add softfloat glue for sh3.
 1.1.4.2 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.1.4.1 06-Jun-2000  minoura file milieu.h was added on branch minoura-xpg4dl on 2000-06-23 16:17:18 +0000
 1.2 24-Dec-2005  perry Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.1 06-Jun-2000  tsubai branches: 1.1.4;
Add softfloat glue for sh3.
 1.1.4.2 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.1.4.1 06-Jun-2000  minoura file sh3-gcc.h was added on branch minoura-xpg4dl on 2000-06-23 16:17:18 +0000
 1.2 21-Apr-2002  bjh21 All the versions of softfloat-specialize were practically identical, so replace
them with a single one.
 1.1 06-Jun-2000  tsubai branches: 1.1.4; 1.1.6;
Add softfloat glue for sh3.
 1.1.6.1 25-Apr-2002  nathanw Catch up to -current.
 1.1.4.2 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.1.4.1 06-Jun-2000  minoura file softfloat-specialize was added on branch minoura-xpg4dl on 2000-06-23 16:17:19 +0000
 1.11 07-Jul-2011  matt Don't define a new enum. Just #define round_* to their FP_Rx instead.
 1.10 04-Jul-2011  matt Add __floatunsidf __floatunsisf __floatunsitf routines.
XXX i think they are correct but not sure.
 1.9 16-May-2006  mrg if SOFTFLOAT_FOR_GCC is not defined, don't declare float_detect_tininess.
 1.8 21-Aug-2003  uwe Add missing prototypes to make softfloat compile with -DSOFTFLOAT_NEED_FIXUNS.
 1.7 12-May-2002  bjh21 Add SIGFPE support to SoftFloat, so fpsetmask/fpgetmask now work. A new
variable, float_exception_mask (#defined to _softfloat_float_exception_mask)
contains the current exception mask.
Also make the argument to float_raise into an fp_except.
Also synchronise file header comments between files.
 1.6 06-May-2002  bjh21 Consistently declare the types of float_rounding_mode and float_exception_flags
as fp_rnd and fp_except respectively.
 1.5 26-Apr-2001  simonb Fix typos in an (unused) function return type.
 1.4 08-Feb-2001  bjh21 branches: 1.4.2;
Don't declare functions that are provided elsewhere in libc.
 1.3 15-Jul-2000  bjh21 Revert previous change -- turned out I'd got my build environment in a twist.
 1.2 15-Jul-2000  bjh21 Add fixunssfsi and fixunsdfsi. These are provided by libgcc2.c in GCC 2.95,
but not in EGCS.

This version of fixunssfsi is almost exactly the arm32 version. fixunsdfsi is
mostly based on fixdfsi, but with simplifications for 64-bit integers.

Only minimal testing has been applied so far.
 1.1 06-Jun-2000  tsubai branches: 1.1.4;
Add softfloat glue for sh3.
 1.1.4.2 23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.1.4.1 06-Jun-2000  minoura file softfloat.h was added on branch minoura-xpg4dl on 2000-06-23 16:17:19 +0000
 1.4.2.2 21-Jun-2002  nathanw Catch up to -current.
 1.4.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.5 31-Jul-2009  dsl Add the 'abs', 'div' and 'erand48' sources to stdlib/Makefile.inc.
Change the arch files only include the .S files.
This adds imaxdiv() to some archs where it was missing.
 1.4 04-Aug-2008  matt branches: 1.4.6;
Add C99 functions imaxabs and imaxdiv.
 1.3 22-Mar-2006  drochner branches: 1.3.20;
build erand48_ieee754.c on everything but vax
 1.2 06-Mar-2000  kleink Add ISO C99 long long integer general utility interfaces; partially addresses
PR standards/9482.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.20.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.4.6.2 04-Aug-2008  matt Add C99 functions imaxabs and imaxdiv.
 1.4.6.1 04-Aug-2008  matt file Makefile.inc was added on branch christos-time_t on 2008-08-04 21:29:29 +0000
 1.5 30-Jul-2009  dsl If SRCS contains any .S files then remove the corresponding .c file from
SRCS and add to LSRCS (for lint).
Change the 'string' Makefiles so that the arch/*/string/Makefile.inc
need only specify the .S files for that architecture and not the .c
files for all the files they don't override.
 1.4 18-Jul-2009  dsl Remove references to index.c and rindex.c (strchr.c and strrchr.c
now provide the definitions).
 1.3 20-Nov-2002  itohy Assembly version of string functions.
Originally from SHIMIZU Ryo.
 1.2 24-Aug-2002  itohy Use assembly version of ffs(3).
 1.1 05-Jan-2000  msaitoh branches: 1.1.6;
libc for SH3.
TODO: fplib
 1.1.6.2 10-Dec-2002  thorpej Sync with HEAD.
 1.1.6.1 27-Aug-2002  nathanw Catch up to -current.
 1.3 23-Apr-2006  uwe Now that bcopy.S doesn't contain the actual implemenation, move it
back to libc.
 1.2 22-Dec-2005  christos move to the common tree.
 1.1 20-Nov-2002  itohy branches: 1.1.2;
Assembly version of string functions.
Originally from SHIMIZU Ryo.
 1.1.2.2 10-Dec-2002  thorpej Sync with HEAD.
 1.1.2.1 20-Nov-2002  thorpej file bcopy.S was added on branch nathanw_sa on 2002-12-10 06:25:44 +0000
 1.1 20-Nov-2002  itohy branches: 1.1.2;
Assembly version of string functions.
Originally from SHIMIZU Ryo.
 1.1.2.2 10-Dec-2002  thorpej Sync with HEAD.
 1.1.2.1 20-Nov-2002  thorpej file bzero.S was added on branch nathanw_sa on 2002-12-10 06:25:45 +0000
 1.5 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.4 01-Sep-2002  itohy Save 1-4 instructions on all cases except for the ret=0 case.

This is probably the last version from me. :)
You are welcome to speed it up, of course. :)

Here's a benchmark on SH-4 200MHz.
9.2% faster if all the cases occur evenly.

return value C version previous vers this version speed ratio
of ffs() (ns/call) *1 (ns/call) (ns/call) *2 (*1/*2)
 1.3 28-Aug-2002  itohy Slightly improved version of ffs(3).
Partially from SHIMIZU Ryo <ryo@iij.ad.jp>. Thanks.
Some cases are slower, but other most cases are faster.

Here's a benchmark on SH-4 200MHz.

return value C version previous vers this version speed ratio
of ffs() (ns/call) *1 (ns/call) (ns/call) *2 (*1/*2)
 1.2 24-Aug-2002  itohy branches: 1.2.2;
Oops, SYSLIBC_SCCS -> LIBC_SCCS
 1.1 24-Aug-2002  itohy Assembly version of ffs(3).
Confirmed to return the same value as that of the C version.

The results of a simple benchmark on SH-4 200MHz, is shown below.
I think this shows acceptable performance.

return value C version this version speed
of ffs() (ns/call) (ns/call) ratio
 1.2.2.3 17-Sep-2002  nathanw Catch up to -current.
 1.2.2.2 27-Aug-2002  nathanw Catch up to -current.
 1.2.2.1 24-Aug-2002  nathanw file ffs.S was added on branch nathanw_sa on 2002-08-27 23:49:28 +0000
 1.2 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.1 20-Nov-2002  itohy branches: 1.1.2;
Assembly version of string functions.
Originally from SHIMIZU Ryo.
 1.1.2.2 10-Dec-2002  thorpej Sync with HEAD.
 1.1.2.1 20-Nov-2002  thorpej file memcpy.S was added on branch nathanw_sa on 2002-12-10 06:25:45 +0000
 1.2 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.1 20-Nov-2002  itohy branches: 1.1.2;
Assembly version of string functions.
Originally from SHIMIZU Ryo.
 1.1.2.2 10-Dec-2002  thorpej Sync with HEAD.
 1.1.2.1 20-Nov-2002  thorpej file memmove.S was added on branch nathanw_sa on 2002-12-10 06:25:45 +0000
 1.2 20-Dec-2005  christos Use reach-over sources from common/lib/libc
 1.1 20-Nov-2002  itohy branches: 1.1.2;
Assembly version of string functions.
Originally from SHIMIZU Ryo.
 1.1.2.2 10-Dec-2002  thorpej Sync with HEAD.
 1.1.2.1 20-Nov-2002  thorpej file memset.S was added on branch nathanw_sa on 2002-12-10 06:25:45 +0000
 1.6 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.5 07-Aug-2003  agc branches: 1.5.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 09-Apr-2001  marcus Added missing _C_LABEL to errno reference.
 1.1 05-Jan-2000  msaitoh branches: 1.1.6;
libc for SH3.
TODO: fplib
 1.1.6.1 08-Oct-2001  nathanw Catch up to -current.
 1.5.6.1 22-Jan-2006  tron Apply patch (requested by uwe in ticket #1102):
Use JUMP_CERROR instead of messing with errno directly.
Simplify. Add WARN_REFERENCES.
 1.7 12-Sep-2013  joerg Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.6 06-Jan-2006  uwe branches: 1.6.44; 1.6.50;
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.5 05-Jan-2006  uwe Use PLT for PIC call to _exit to avoid text reloc in the shared library.
Add .size directive.
 1.4 05-Jan-2006  uwe Use macros from <machine/asm.h>. Add some comments.
Same PIC object code. Almost the same non-PIC object code (b/c of
s/jsr/jmp/ to _exit).
 1.3 24-Oct-2003  uwe branches: 1.3.6;
In PIC code "braf" to cerror, not "bsrf" to it!
 1.2 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.1 22-Jul-2001  tsubai branches: 1.1.2;
Add __clone() for sh3.
 1.1.2.2 08-Oct-2001  nathanw Catch up to -current.
 1.1.2.1 22-Jul-2001  nathanw file __clone.S was added on branch nathanw_sa on 2001-10-08 20:18:06 +0000
 1.3.6.3 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.3.6.2 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/sys/__clone.S: revision 1.5
Use PLT for PIC call to _exit to avoid text reloc in the shared library.
Add .size directive.
 1.3.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/sys/__clone.S: revision 1.4
Use macros from <machine/asm.h>. Add some comments.
Same PIC object code. Almost the same non-PIC object code (b/c of
s/jsr/jmp/ to _exit).
 1.6.50.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.6.44.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.1 20-Apr-2000  tsubai Add missing files.
 1.9 26-Oct-2021  christos Merge all MD __sigaction14_sigtramp.c copies into one:
- sparc and sparc64 were not using version 0 sigcontext when there were
no arguments in the signal version. This was probably a bug.
- vax is using +1 the version numbers of the other archs.
- Only hppa was defining __LIBC12_SOURCE__ so it was getting a working
sigcontext before. all the other ports that supported sigcontext had
the compat code disabled.
[pointed out by thorpej, thanks!]
If we want to remove sigcontext support from userland at least now there
is less work to do so.
 1.8 28-Apr-2008  martin branches: 1.8.8;
Remove clause 3 and 4 from TNF licenses
 1.7 18-May-2006  christos branches: 1.7.18;
change __weak_extern to __weak_reference so that gcc4 works.
 1.6 19-Feb-2006  christos make these consistent.
 1.5 12-Jun-2005  lukem Add missing __RCSID()
 1.4 23-Mar-2004  drochner save errno while trying to install a !SA_SIGINFO trampoline -- this
is expected to fail with !COMPAT_16 kernels, and we shouldn't
overwrite errno in this case
 1.3 23-Nov-2003  uwe Implement siginfo for sh3.
 1.2 18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.1 09-Jul-2002  thorpej branches: 1.1.2;
New __sigaction14() system call stub which registers the signal
trampoline, and the signal trampolines themselves.

NOTE: These are not yet enabled; they will be enabled after further
testing on more architectures.
 1.1.2.3 02-Oct-2002  thorpej libc:
Internally rename __sigaction14 to __libc_sigaction14. Provide a
weak alias of __sigaction14 -> __libc_sigaction14.

libpthread:
Use __libc_sigaction14 to actually register the signal handler, rather
than using __sigaction_sigtramp() directly with a hard-coded trampoline
version. While we don't actually use the libc trampoline, we want to
avoid depending on any COMPAT_* kernel options down the road (this is
already the case for the VAX port).

Be explicit about which version of the signal interface we're interposing
(...14), and build pthread_sig.c with __LIBC12_SOURCE__ (required to get
the libc-internal interfaces).
 1.1.2.2 01-Aug-2002  nathanw Catch up to -current.
 1.1.2.1 09-Jul-2002  nathanw file __sigaction14_sigtramp.c was added on branch nathanw_sa on 2002-08-01 03:28:05 +0000
 1.7.18.1 18-May-2008  yamt sync with head.
 1.8.8.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.8.8.1 28-Apr-2008  martin file __sigaction14_sigtramp.c was added on branch christos-time_t on 2008-04-28 20:22:58 +0000
 1.4 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.3 26-Mar-2004  drochner fix references to the syscall formerly known as SYS___sigreturn14
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.2 26-Mar-2004  drochner fix references to the syscall formerly known as SYS___sigreturn14
 1.1 09-Jul-2002  thorpej branches: 1.1.2;
New __sigaction14() system call stub which registers the signal
trampoline, and the signal trampolines themselves.

NOTE: These are not yet enabled; they will be enabled after further
testing on more architectures.
 1.1.2.2 01-Aug-2002  nathanw Catch up to -current.
 1.1.2.1 09-Jul-2002  nathanw file __sigtramp1.S was added on branch nathanw_sa on 2002-08-01 03:28:05 +0000
 1.5 24-Nov-2021  thorpej Decorate the SuperH signal trampoline with the appropriate .cfi
directives to allow exception unwind / backtrace across a signal
handler.
 1.4 15-Oct-2020  skrll Trailing whitespace
 1.3 28-Apr-2008  martin branches: 1.3.8;
Remove clause 3 and 4 from TNF licenses
 1.2 06-Jan-2006  uwe branches: 1.2.18;
Add .size directive.
 1.1 23-Nov-2003  uwe Implement siginfo for sh3.
 1.2.18.1 18-May-2008  yamt sync with head.
 1.3.8.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.3.8.1 28-Apr-2008  martin file __sigtramp2.S was added on branch christos-time_t on 2008-04-28 20:22:58 +0000
 1.6 06-Jan-2006  uwe This can be simplified to RSYSCALL(__syscall), no special treatment necessary.
 1.5 07-Aug-2003  agc branches: 1.5.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 17-Jan-2001  itojun branches: 1.2.2;
fix syscall() and __syscall(). r0 has to be set to SYS_syscall or
SYS___syscall, respectively. otherwise sys/arch/sh3/sh3/trap.c will
look at the wrong argument.
 1.1 04-Jan-2001  itojun __syscall is now mandatory
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.5.6.1 11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1097):
lib/libc/arch/sh3/sys/__syscall.S: revision 1.6
This can be simplified to RSYSCALL(__syscall), no special treatment necessary.
 1.6 06-Jan-2006  uwe Use JUMP_CERROR instead of messing with errno directly.
Simplify.
 1.5 07-Aug-2003  agc branches: 1.5.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 16-Feb-2001  msaitoh branches: 1.2.2;
_C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.5.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1102):
lib/libc/arch/sh3/sys/__vfork14.S: revision 1.6
Use JUMP_CERROR instead of messing with errno directly.
Simplify.
 1.11 12-Sep-2013  joerg Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.10 06-Jan-2006  uwe branches: 1.10.44; 1.10.50;
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.9 07-Aug-2003  agc branches: 1.9.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.8 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.7 11-May-2001  msaitoh style fix (no functional change)
 1.6 16-Dec-2000  tsubai branches: 1.6.2;
Fix weak alias.
 1.5 04-Aug-2000  tsubai s/minbrk/_C_LABEL(__minbrk)/.
 1.4 26-Jun-2000  kleink Thinko in previous: we do always use an internal name.
 1.3 23-Jun-2000  kleink Add internal names for brk() and sbrk().
 1.2 27-Mar-2000  msaitoh branches: 1.2.4;
fill delay slots (from Klaus Klein)
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.4.1 22-Aug-2000  kleink Pull up revs. 1.3-1.4 (approved by thorpej):
Add internal names for brk(), sbrk() and fork().
 1.6.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.9.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.10.50.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.44.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.11 12-Sep-2013  joerg Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.10 06-Jan-2006  uwe branches: 1.10.44; 1.10.50;
Change !_REENTRANT && !PIC case to use r4 too.
 1.9 06-Jan-2006  uwe Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.8 05-Jan-2006  uwe Use PLT for PIC call to __errno to avoid text reloc in the shared library.
Add .size directive.
 1.7 28-May-2004  uwe branches: 1.7.2;
Provide _REENTRANT code. It's a wonder nobody has noticed this before.
Uncovered by multithreaded bind9 utils.
 1.6 07-Aug-2003  agc branches: 1.6.2;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 14-Feb-2001  msaitoh branches: 1.3.2;
use _C_LABEL()
 1.2 27-Mar-2000  msaitoh fill delay slots (from Klaus Klein)
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.6.2.1 29-May-2004  tron Pull up revision 1.7 (requested by uwe in ticket #418):
Provide _REENTRANT code. It's a wonder nobody has noticed this before.
Uncovered by multithreaded bind9 utils.
 1.7.2.3 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/sys/cerror.S: revision 1.10
Change !_REENTRANT && !PIC case to use r4 too.
 1.7.2.2 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.7.2.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/sys/cerror.S: revision 1.8
Use PLT for PIC call to __errno to avoid text reloc in the shared library.
Add .size directive.
 1.10.50.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.44.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.6 07-Feb-2017  kamil Mark exect(3) obsolete and bind it to plain execve(2) on all platforms

The original exect(2) from BSD4.2 was enabling bit for tracing
(single-step mode) and calling execve(2). The purpose of it was to generate
a signal for a tracer once the application will change its image to a new
program.

This approach no longer works as:
- exect(2) traces (single-steps) libc and it requires hundreds or
thousands steps before entering a new image
- it's vax and x86 specific code
- this functionality has been moved to the kernel - once a process is
traced it will generate SIGTRAP with si_code TRAP_EXEC and route it to
its debugger
- the side effects and unportability make this interface unusable
- there are no known users of this interface
- it apparently never worked better since day0 of NetBSD ("day0 bug")

Users are requested to move to other execve(2) variants. Calling current
execve(2) as it is the most similar behavior to this one from BSD4.2.

Discussed several times on mailing lists and in PR/51700.

Add warning to exect(3) telling about marking this function obsolete.

This function is prepared to be removed in next libc major bump.

Sponsored by <The NetBSD Foundation>
 1.5 06-Jan-2006  uwe branches: 1.5.68; 1.5.72;
This can be simplified to PSEUDO(exect,execve).
 1.4 07-Aug-2003  agc branches: 1.4.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.3 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.2 11-May-2001  msaitoh style fix (no functional change)
 1.1 05-Jan-2000  msaitoh branches: 1.1.6;
libc for SH3.
TODO: fplib
 1.1.6.1 08-Oct-2001  nathanw Catch up to -current.
 1.4.6.1 11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1097):
lib/libc/arch/sh3/sys/exect.S: revision 1.5
This can be simplified to PSEUDO(exect,execve).
 1.5.72.1 21-Apr-2017  bouyer Sync with HEAD
 1.5.68.1 20-Mar-2017  pgoyette Sync with HEAD
 1.10 06-Jan-2006  uwe Open code _SYSCALL_NOERROR to shave off a memory load and a branch.
Makes this congruent to vforks. Add .size directive.
 1.9 06-Jan-2006  uwe Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.8 07-Aug-2003  agc branches: 1.8.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.7 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.6 13-Feb-2003  nathanw Implement pthread_atfork() (in libc, because the required threadlib
stub behavior is exactly the same as the usual behavior).
 1.5 11-May-2001  msaitoh style fix (no functional change)
 1.4 16-Dec-2000  tsubai branches: 1.4.2;
Fix weak alias.
 1.3 26-Jun-2000  kleink Need an internal name for fork().
 1.2 27-Mar-2000  msaitoh branches: 1.2.4;
fill delay slots (from Klaus Klein)
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.4.1 22-Aug-2000  kleink Pull up rev. 1.3 (approved by thorpej):
Add internal names for brk(), sbrk() and fork().
 1.4.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.8.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.3 28-Apr-2008  martin branches: 1.3.8;
Remove clause 3 and 4 from TNF licenses
 1.2 18-Jan-2003  thorpej branches: 1.2.30;
Merge the nathanw_sa branch.
 1.1 22-Jun-2002  thorpej branches: 1.1.2;
file getcontext.S was initially added on branch nathanw_sa.
 1.1.2.1 22-Jun-2002  thorpej ucontext-related functions. From Klaus Klein.
 1.2.30.1 18-May-2008  yamt sync with head.
 1.3.8.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.3.8.1 28-Apr-2008  martin file getcontext.S was added on branch christos-time_t on 2008-04-28 20:22:58 +0000
 1.2 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.1 20-Apr-2000  tsubai Add missing files.
 1.7 06-Jan-2006  uwe Simplify.
 1.6 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 11-May-2001  msaitoh style fix (no functional change)
 1.4 16-Dec-2000  tsubai branches: 1.4.2;
Fix weak alias.
 1.3 28-Sep-2000  kleink Need an internal name for pipe(2).
 1.2 27-Mar-2000  msaitoh branches: 1.2.4;
fill delay slots (from Klaus Klein)
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.4.1 29-Sep-2000  kleink Pull up rev. 1.3 (approved by thorpej):
Add internal name for pipe().
 1.4.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.9 12-Sep-2013  joerg Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.8 06-Jan-2006  uwe branches: 1.8.44; 1.8.50;
Provide _REENTRANT version of errno = 0;
 1.7 06-Jan-2006  uwe Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.6 24-Oct-2003  uwe branches: 1.6.6;
In PIC code "braf" to cerror, not "bsrf" to it!
 1.5 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 16-Feb-2001  msaitoh branches: 1.2.2;
_C_LABEL()
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.6.6.2 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1103):
lib/libc/arch/sh3/sys/ptrace.S: revision 1.8
Provide _REENTRANT version of errno = 0;
 1.6.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.8.50.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.8.44.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.10 12-Sep-2013  joerg Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.9 06-Jan-2006  uwe branches: 1.9.44; 1.9.50;
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.8 07-Aug-2003  agc branches: 1.8.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.7 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.6 11-May-2001  msaitoh style fix (no functional change)
 1.5 16-Dec-2000  tsubai branches: 1.5.2;
Fix weak alias.
 1.4 26-Jun-2000  kleink Thinko in previous: we do always use an internal name.
 1.3 23-Jun-2000  kleink Add internal names for brk() and sbrk().
 1.2 27-Mar-2000  msaitoh branches: 1.2.4;
fill delay slots (from Klaus Klein)
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.4.1 22-Aug-2000  kleink Pull up revs. 1.3-1.4 (approved by thorpej):
Add internal names for brk(), sbrk() and fork().
 1.5.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.8.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.9.50.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.9.44.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5 18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 16-Feb-2001  msaitoh branches: 1.3.2;
_C_LABEL()
 1.2 27-Mar-2000  msaitoh fill delay slots (from Klaus Klein)
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.2 25-Feb-2002  nathanw Move setlogin() stub to C code, and namespace-protect it.
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.1 07-Jul-2000  itohy Add special treatment of shmat(2).
On m68k ELF calling standard (__SVR4_ABI__), if a function
returns a pointer, the return value should go to a0 as well as d0.
 1.2 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.1 20-Apr-2000  tsubai Add missing files.
 1.2 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.6 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.5 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 04-Aug-2000  tsubai branches: 1.3.2;
Change comment character from '#' to '!'. (binutils-2.10 doesn't like '#')
 1.2 27-Mar-2000  msaitoh fill delay slots (from Klaus Klein)
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.3.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.7 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.6 07-Aug-2003  agc branches: 1.6.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.5 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.4 11-May-2001  msaitoh style fix (no functional change)
 1.3 09-Apr-2001  marcus Renamed reference to compat syscall to conform to new naming scheme.
 1.2 04-Aug-2000  tsubai branches: 1.2.2;
Change comment character from '#' to '!'. (binutils-2.10 doesn't like '#')
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.6.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.4 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.3 26-Mar-2004  drochner the WARN_REFERENCES text "include <signal.h> for correct reference" is pointless
as <signal.h> won't help you, so remove it
 1.2 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.6 15-Sep-2005  uwe Switch arch/sh3/sys to the new compat code layout.
 1.5 07-Aug-2003  agc branches: 1.5.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 04-Aug-2000  tsubai branches: 1.2.2;
Change comment character from '#' to '!'. (binutils-2.10 doesn't like '#')
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.5.6.1 22-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1101):
lib/libc/arch/sh3/SYS.h: revision 1.8
lib/libc/arch/sh3/sys/brk.S: revision 1.10
lib/libc/arch/sh3/sys/__clone.S: revision 1.6
lib/libc/arch/sh3/sys/cerror.S: revision 1.9
lib/libc/arch/sh3/sys/ptrace.S: revision 1.7
lib/libc/arch/sh3/sys/fork.S: revision 1.9
lib/libc/arch/sh3/sys/sbrk.S: revision 1.9
lib/libc/arch/sh3/sys/sigprocmask.S: patch
lib/libc/arch/sh3/sys/sigsuspend.S: patch
Change cerror to take errno in r4, instead of r0.
In PIC code fetch cerror address from GOT to avoid
unresolved text relocations in shared libraries.
Hide the code to jump to cerror inside JUMP_CERROR macro.
Change syscall code to use JUMP_CERROR.
Die text relocations! DIE!
 1.7 18-Apr-2020  thorpej Rename "syscall" to "_syscall" and provide "syscall" as a weak alias.
 1.6 06-Jan-2006  uwe branches: 1.6.86;
This can be simplified to RSYSCALL(syscall), no special treatment necessary.
 1.5 07-Aug-2003  agc branches: 1.5.6;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.4 01-Jul-2003  marcus Generate proper PIC code for libc_pic.a.
 1.3 11-May-2001  msaitoh style fix (no functional change)
 1.2 17-Jan-2001  itojun branches: 1.2.2;
fix syscall() and __syscall(). r0 has to be set to SYS_syscall or
SYS___syscall, respectively. otherwise sys/arch/sh3/sh3/trap.c will
look at the wrong argument.
 1.1 05-Jan-2000  msaitoh libc for SH3.
TODO: fplib
 1.2.2.1 08-Oct-2001  nathanw Catch up to -current.
 1.5.6.1 11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1097):
lib/libc/arch/sh3/sys/syscall.S: revision 1.6
This can be simplified to RSYSCALL(syscall), no special treatment necessary.
 1.6.86.1 21-Apr-2020  martin Sync with HEAD

RSS XML Feed