Changes for Customer W; also suitable for building on an Iyonix.
Ben Avison authored
Detail:
  * No longer uses aasm to build h.swis.
  * (Only) compatible with new C compilers: assumes const static data is
    placed in separate read-only areas, and suitable command-line switch
    is used to ensure that library static data is never placed in a zero-
    init area.
  * Stack extension code now thread-safe.
  * Heap thread-safety code (in clib) now uses SWP instruction test results
    from stack extension code (in kernel) - as a side effect, the exported
    symbol _swp_available now exists, if you need to use it elsewhere.
  * Slightly closer to having top-bit-set heap addresses working.
Admin:
  Tested in a Tungsten build, and with Customer W's test suite.

Version 5.48. Tagged as 'RISC_OSLib-5_48'
20ee3c3f
Name Last commit Last update
..
Super Import from cleaned 360 CD
alloc Changes for Customer W; also suitable for building on an Iyonix.
armprof 32-bit work merged from kbracey_32bit branch.
armsys Ansilib improvements, and a bugfix to system()
ctype Import from cleaned 360 CD
date Import from cleaned 360 CD
error * __assert2() added to support for C99 assert(), which displays function name.
fpprintf * Added two new library chunks, 4 and 5, which contain extensions to the kernel and C library respectively. These have no static data associated with them, just being extensions of the stub tables. The reason for this is to minimise wasted space in programs that don't use the C99 facilities; o.stubs is now a library split into 3 pieces - basic kernel and CLib, extra kernel and extra
locale * Added two new library chunks, 4 and 5, which contain extensions to the kernel and C library respectively. These have no static data associated with them, just being extensions of the stub tables. The reason for this is to minimise wasted space in programs that don't use the C99 facilities; o.stubs is now a library split into 3 pieces - basic kernel and CLib, extra kernel and extra
math * __assert2() added to support for C99 assert(), which displays function name.
printf * Added two new library chunks, 4 and 5, which contain extensions to the kernel and C library respectively. These have no static data associated with them, just being extensions of the stub tables. The reason for this is to minimise wasted space in programs that don't use the C99 facilities; o.stubs is now a library split into 3 pieces - basic kernel and CLib, extra kernel and extra
scanf Added atoll, strtoll, strtoull, strtoimax, strtoumax, imaxabs and imaxdiv functions to the standard C library.
signal * Added two new library chunks, 4 and 5, which contain extensions to the kernel and C library respectively. These have no static data associated with them, just being extensions of the stub tables. The reason for this is to minimise wasted space in programs that don't use the C99 facilities; o.stubs is now a library split into 3 pieces - basic kernel and CLib, extra kernel and extra
sort Fix for qsort to stop aborts.
stdio * __assert2() added to support for C99 assert(), which displays function name.
stdlib * __assert2() added to support for C99 assert(), which displays function name.
string * __assert2() added to support for C99 assert(), which displays function name.
time Import from cleaned 360 CD
xmath Import from cleaned 360 CD