- 28 May, 2012 1 commit
-
-
Robert Sprowson authored
Ammended time() to match ISO9899 and just return UTC like it says. Inlined the single use of _bbctime() macro. locale.c The timezone within a territory can now be specified as part of the setlocale() function. This uses a qualifier to the already accepted territory name, for an example see test/tzones.c Shock addition of some comments to the locale parsing function. To avoid needing to mess about with C library workspace the timezone and territory are encoded internally into 1 word, with 10 bits allowing up to 1024 territories worldwide. Ripple through to strftime(). time.c localtime() updated to respect locale selection. test/file,gen_inputs,test64 Copyright headers added. Output compared with Windows XP using setlocale versus tzset to shift the program into Pacific time. Version 5.68. Tagged as 'RISC_OSLib-5_68'
-
- 28 Oct, 2011 1 commit
-
-
Ben Avison authored
Detail: * Added 64-bit file pointer API support, following the LFS spec v1.5 (see Docs directory). Internally, now uses 64-bit file pointers exclusively. For now, the backend still limits you to 4GB-1 files, but clients of the C library won't need recompiling again to support larger files than this once they use the new API. * Fixed a large number of warnings produced in compilation, assembly and linking, many of them new and resulting from the improved checks in the latest toolchain. * Increased the maximum stream buffer size from 16MB to 1GB. * Added Hdr:SDFS and Hdr:SDIO to the list of headers used to build swis.h if they are present. Admin: Verified that the new 64-bit file pointer buffering code works using a ROM build (since the toolchain makes extensive use of reading, writing and seeking internally). Version 5.64. Tagged as 'RISC_OSLib-5_64'
-
- 02 Dec, 2003 1 commit
-
-
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'
-
- 15 Apr, 2003 1 commit
-
-
Kevin Bracey authored
* _Exit() added. * Lots of new <math.h> functions (acosh, asinh, atanh, exp2, expm1, ilogb, log1p, log2, logb, scalbn, scalbln, cbrt, erf, erfc, lgamma, tgamma, nexttoward, fmaf). Float and long double forms of every function added; long double forms are included as another library object in the stubs rather than the shared library, as they just branch to the double form. * Subnormal/NaN/infinity cases in various <math.h> functions improved. * Added <tgmath.h>. * Headers brought into line with CC 5.54. * RMEnsures added to C library initialisation to try to load minimum CallASWI, FPEmulator, CLib. No errors reported if load fails. * A few pointless inter-file dependencies removed to reduce minimum size of included ANSILib. Version 5.46. Tagged as 'RISC_OSLib-5_46'
-
- 15 Nov, 2002 1 commit
-
-
Kevin Bracey authored
PCI added to swis.h alloc.c updated to handle bigger slots (new code merged from ARM libraries) Various 32-bit fixes for backtracing, and general trap handling. Polite "Application is not 32-bit compatible" message. Headers <stdint.h> and <inttypes.h> fixed to work in non-C99 mode. txt changed to do new-style Delete behaviour Version 5.44. Tagged as 'RISC_OSLib-5_44'
-
- 22 May, 2002 1 commit
-
-
Kevin Bracey authored
* 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 CLib; only the bits a program needs get included. * Previous extensions to the C library stubs revoked - they now stop at _swix; all the new C99 functions now live in chunk 4. Anyone using those new functions should relink with new stubs and ensure this C library version. * printf/scanf now support 64-bit types through "ll" and "j" length modifiers. * Run-time support for VLAs (__rt_allocauto and __rt_freeauto) added. No attempt is currently made to clear up on longjmp or to cope with someone changing the kernel allocator while a VLA is active. These would be a future enhancement. * Added complete 64-bit run-time support (48 functions) to kernel library; these functions are compatible with the ones used by the ARM ADS. Many of the simpler functions will not normally be used by the compiler, as it will generate inline code. There is scope for improvement by switching in MULL and CLZ-using forms of multiply and divide when possible. * llabs and lldiv added to C library. * Header files corrected in a few areas, and changed to match the C compiler. <stdint.h> and <stdbool.h> now require the compiler to be in C99 mode (as detected using __STDC_VERSION__). Version 5.41. Tagged as 'RISC_OSLib-5_41'
-
- 21 Mar, 2002 1 commit
-
-
Kevin Bracey authored
* snprintf(), vsnprintf(), vfscanf(), vscanf(), vsscanf() * hh, j, z and t printf length modifiers (indicating char, intmax_t, size_t and ptrdiff_t respectively) * Hexadecimal floating-point printing and scanning (%a/%A) * %F printf() specifier (upper-case form of %F) * Input/output of NaNs and Infinities * imaxdiv_t, imaxdiv(), strtoimax(), strtoumax() (simulated through macros) * <fenv.h>: feclearexcept(), fegetexceptflag(), feraiseexcept(), fesetexceptflag(), fetestexcept(), fegetround(), fesetround(), fegetenv(), feholdexcept(), fesetenv(), feupdateenv() * FLT_EVAL_METHOD, DECIMAL_DIG * hypot(), hypotf(), fabsf(), fdim(), fdimf(), fmax(), fmaxf(), fmin(), fminf() * INFINITY, NAN, fpclassify(), isfinite(), isinf(), isnan(), isnormal(), signbit(), copysign(), copysignf(), nan(), nanf(), nextafter(), nextafterf() isgreater(), isgreaterequal(), isless(), islessequal(), islessgreater(), isunordered() This involves adding 36 new entries to the stubs. Current versions of the C library will not fault client programs with such larger stubs, but will fill in the extra entries with junk. Programs requiring the new functions will have to RMEnsure this version of the Shared C Library. This version of the C library has been fixed so that in future, any extra unknown stubs entries will be filled in with a branch to zero, rather than corrupted. Requires cc 5.41 or later, both to build, and to make use of some of the extra facilities. Version 5.37. Tagged as 'RISC_OSLib-5_37'
-
- 29 Jan, 2002 1 commit
-
-
Kevin Bracey authored
Aborts now give standard error messages (Abort on Data Transfer at... etc) *ShowRegs now filled in after aborts assert(), abort(), "free failed" and standard signal handlers now use Wimp error boxes if in the desktop Postmortem button on error boxes to view the postmortem Also, x$multiply, x$divide, __rt_sdiv, x$remainder, x$udivide, __rt_udiv and x$uremainder optimised. Version 5.35. Tagged as 'RISC_OSLib-5_35'
-
- 22 Feb, 2001 1 commit
-
-
Stewart Brodie authored
Another getenv() bug fixed. Detail: stdio.c contains a vastly improved implementation of fwrite. hostsys.h declares _terminate_getenv to remove build warnings. armsys.c contains fix to getenv() to stop Omni dying. Admin: Tested on desktop machine for over a week without incident, including several heavy fwrite users (WebServe, C compiler) fwrite change is documented in Doc/fwrite getenv() bug is Bugzilla bug #28 Version 5.27. Tagged as 'RISC_OSLib-5_27'
-
- 02 Oct, 2000 1 commit
-
-
Kevin Bracey authored
* Correction to static base location in modulewrap - was affecting some DSL 4000 video software. Version 5.15. Tagged as 'RISC_OSLib-5_15'
-
- 26 Oct, 1998 1 commit
-
-
Stewart Brodie authored
Moved template for swis.h out of asm source into separate text file. Detail: s.makehswis: The text which forms the common header for the derived swis.h is now stored externally rather than declared inline with assembler directives. h.swisheaders: The external file containing the common header. Now wraps the declarations of _swi and _swix with "#pragma -v4" to activate the _swi/_swix parameter checking for those functions. Makefile: Added dependency of derived.swis on h.swisheader Admin: Built and exported. Tested with cc 5.09 and it was happy with the new pragma (it ignores it). Tested with what will be cc 5.10 and it recognised it and started checking _swi and _swix calls. Version 4.90. Tagged as 'RISC_OSLib-4_90'
-
- 01 Oct, 1998 1 commit
-
-
Kevin Bracey authored
StrongARMfudge flag removed. StrongARM compatibility set according to AMBKernel flag in Hdr:RISCOS strftime %U and %W specifiers fixed for week 0. Version 4.89. Tagged as 'RISC_OSLib-4_89'
-
- 27 Aug, 1998 1 commit
-
-
Simon Middleton authored
Merged Spinner branch changes onto trunk (new RCA messages files and Makefile changes). Convert to srccommit while we're at it. Removed a few $Revision's to prevent future spurious merge clashes. Version 4.87. Tagged as 'RISC_OSLib-4_87'
-
- 05 Nov, 1996 1 commit
-
-
Neil Turton authored
-