Lines Matching refs:to
18 from Newlib, none of the GPL-related bits used to build the library
38 at this point only has code to build for the following targets:
56 1. newlib/libc/machine/_architecture_/meson.build to build the
62 atomics for ungetc to work correctly in a reentrant
68 3. newlib/libm/machine/_architecture_/meson.build to build any
73 cases, but this is necessary to run tests under qemu if your
76 5. cross-_gcc-triple_.txt to configure the meson cross-compilation
77 mechanism to use the right tools
79 6. do-_architecture_-configure to make testing the cross-compilation
86 8. run-_architecture_ script to run tests under QEMU. Look at the ARM
87 and RISC-V examples to get a sense of what this needs to do and
91 ## Relation to newlib
100 picolibc, some care needs to be taken while editing the code:
103 * Fixes that also benefit users of newlib should also be sent to the
111 areas unrelated to the code used by picolibc, so keeping things in
118 * [Building Picolibc](doc/build.md). Explains how to compile picolibc yourself.
119 * [Using Picolibc](doc/using.md). Shows how to compile and link
126 Detailed documentation. Use these to learn more details about how to
152 * Merge newlib changes that included an update to the ARM assembly
156 doesn't use floating point operations to save additional space on
164 * Fix cmake build system to auto-detect compiler characteristics
168 * Fix cmake build system to leave out TLS support when TLS is
173 * Add allocation attributes to malloc and stdio functions. This
174 allows the compiler to detect allocation related mistakes as well
178 * Add wchar_t support to tinystdio, eliminating the last missing
184 version of meson. Thanks to Michael Platings.
186 * Add Microblaze support. Thanks to Alp Sayin.
188 * Switch semihosting to use binary mode when opening files. Thanks to
192 code. These allows developers to reference them as libraries on the
193 command line instead of needing special compiler support to locate
194 the different variants, which is useful when using clang. Thanks to
197 * Simplify the signal/raise implementation to use a single global
198 array of signal handlers and to not use getpid and kill, instead
200 simpler and doesn't cause a large TLS block to be allocated. Thanks
201 to Joe Nelson for discovering the use of a TLS variable here.
206 library, it seems like it's time to declare a larger version increment
211 * Fix FPSCR state for Arm8.1-M low overhead loops (thanks to David
214 * Add -Werror=double-promotion to default error set and fix related
215 errors. (thanks to Ryan McClelland)
225 * Switch read/write functions to use POSIX types instead of legacy
226 cygwin types. This makes mapping to existing an POSIX api work
229 * Add %b support to tinystdio printf and scanf. These are disabled by
235 and reconfigures the functions to match the compiler types.
238 Intel and 128-bit IEEE values (in addition to supporting 64-bit
243 is enough to run some simple tests, but doesn't have any
247 needed to validate the big-endian and exception code for 128-bit
248 long doubles, but was also used to validate the double double
256 the default linker script and startup code. (thanks to Joakim
274 * Merge current newlib bits to get code that doesn't use struct _reent
288 * Merge i686 and x86_64 code to allow x86 multilib builds
316 10. Add _zicsr to -march for risc-v picocrt (binutils 2.38 compat)
318 11. Add -no-warn-rwx-segments to link spec (binutils 2.38 compat)
324 2. Fix config option documentation. (Thanks to rdiez)
326 3. Document how re-entrant locking APIs are used. (Thanks to rdiez)
328 4. Fix some 16-bit int issues in tinystdio. (Thanks to Ayke van
332 headers, moving byte swapping macros to arpa/inet.h
338 7. Re-do buffered I/O support to handle mixed read/write files
343 9. Add enough cmake support to allow Zephyr to build picolibc as a
355 2. Automatically include '-nostdlib' to options used while
356 evaluating build rules to ensure tests work as expected.
363 1. Fix build on big-endian systems (thanks to Thomas Daede)
365 2. Add m68k support (thanks to Thomas Daede).
367 3. Fix build issues with ARM Cortex-a9 target (thanks to Ilia
374 5. Update Ryu code to match upstream (minor fixes)
377 single leading underscore instead of two (thanks to Vincent
388 11. Fail builds if most 'run_command' uses fail (thanks to Johan de
400 to check for out-of-memory. Picolibc now passes all of the glibc
406 15. Tinystdio version of fcvt now has a static buffer large enough to
411 to prevent buffer overruns.
414 to isolate picolibc build scripts from the vagaries of meson
415 version shifts (thanks to R. Diez).
424 1. Clean up meson build bits, including use of 'fs module (thanks to
427 2. Speed up github actions by sharing Debian docker image (thanks to
432 4. Use standard Meson architecture names everywhere (thanks to
453 13. Restructure math library to always use the `__math_err` functions
454 to raise exceptions and set errno. This removes the w_*.c wrapper
456 compiler work-arounds to ensure run-time evaluation of
457 expressions intended to raise exceptions. In the process, all of
469 1. Add -Wall -Wextra to default builds. Fixed warnings this raised.
471 2. Add htonl and friends (based on __htonl). Thanks to Johan de
474 3. Set errno in scalbn and scalbnf (patch forwarded to newlib).
480 1. Fix picolibc.ld to split C++ exceptions back apart (thanks to
483 2. Add vsscanf to tinystdio (required for libstdc++).
485 3. Also stick -isystem in C++ compile command to try and get
486 picolibc headers to be used instead of newlib.
490 1. Add __cxa_atexit implementation to 'picoexit' path as required by
501 '-lm' to link successfully. Having them merged allows use of libm
504 2. Add hex float format to *printf, *scanf and strto{d,f,ld}. This is
510 4. Make strto{d,f,ld} set errno to ERANGE on overflow/underflow,
515 1. Change `restrict` keyword in published headers to `__restrict` to
518 2. Additional cleanups in time conversion funcs (Thanks to R. Riez)
522 1. Code cleanups for time conversion funcs (Thanks to R. Diez)
525 to avoid trouble building with native Ubuntu GCC.
529 4. Use __asm__ for inline asm code to allow building applications
532 5. Fix exit code for semihosting 'abort' call to make it visible
533 to the hosting system.
541 1. Bugfix for snprintf(buf, 0) and vsnprintf(buf, 0) to avoid
550 4. Add 'minimal' crt0 variant that skips constructors to
551 save space on systems known to not use any.
553 5. Fix HW floating point initialization on 32-bit ARM processors to
554 perform 'dsb' and 'isb' instructions to ensure the FPU enabling
560 7. Add bare-metal i386 and x86_64 initializatiton code (thanks to
561 Mike Haertel). These initalize the processor from power up to
566 9. Add 'timegm' function (thanks to R. Diez).
570 negative precision to '*' arguments in printf, fix handling of
571 'j', 'z' and 't' argument size specifiers (thanks to Sebastian
575 spec. All architectures now fall back to the default code
581 1. Make riscv crt0 '_exit' symbol 'weak' to allow linking without
604 9. Build fixes to reliably replace generic code with
607 With a patch which is pending for GCC 11, we'll be able to build C++
613 all now verified to match the C19 and Posix standards in this
616 2. Change behavior of 'gamma' function to match glibc which returns
622 to only use fma/fmaf when it is supported by the hardware.
626 5. Change nano-malloc to always clear returned memory.
628 6. Improve nano-realloc to perform better in various ways, including
633 8. Improve build portability to Windows. Picolibc should now build
638 10. Support clang compiler. Thanks to Denis Feklushkin
650 13. Patches to support building with [CompCert](http://compcert.inria.fr/), a
651 formally verified compiler. Thanks to Sebastian Meyer
664 external CCS file loading to use stdio. By default, iconv provides
670 4. Add __getauxval stub implementation to make picolibc work with
681 6. Document how to use picolibc on a native POSIX system for
689 1. Fix section order in picolibc.ld to give applications correct
708 back to the application.
710 2. Add 'exact' floating point print/scan code to tinystdio. Thanks
711 to Sreepathi Pai for pointing me at the Ryu code by Ulf
721 5. More clang-compatibility fixes. (Thanks to Denis Feklushkin)
727 1. Clang source compatibility. Clang should now be able to compile
728 the library. Thanks to Denis Feklushkin for figuring out how
729 to make this work.
736 limited to building the library due to a bug in qemu.
762 1. Make __aeabi_read_tp respect ARM ABI register requirements to
770 4. Use __inline instead of inline in published headers to allow
787 repository, was added to many files.
789 3. 4-clause BSD licenses were changed (with permission) to 3-clause
801 1. ESP8266 support added, thanks to Jonathan McDowell.
812 built to use it.
823 support in tinystdio along with an API to fetch a real time clock
826 2. Fix picolibc.ld to not attempt to use redefined symbols for memory
830 continue to mystify.
848 write and lseek. If -Dposix-console=true is also passed to meson,
849 then picolibc will direct stdin/stdout/stderr to the posix
852 3. Merge recent upstream newlib code. This brings picolibc up to date
855 4. Hello world example. This uses a simple Makefile to demonstrate
856 how to us picolibc when installed for ARM and RISC-V embedded
871 2. Move thread-local values to native TLS mechanism
875 4. Switch build system to meson. This has two notable benefits; the first
882 to avoid needing to figure this out.