From: Alexey Lapshin <alexey.lapshin@espressif.com>
To: "newlib@sourceware.org" <newlib@sourceware.org>
Cc: Alexey Gerenkov <alexey.gerenkov@espressif.com>,
"jcmvbkbc@gmail.com" <jcmvbkbc@gmail.com>,
Ivan Grokhotkov <ivan@espressif.com>
Subject: [PATCH, RFC 0/8] add xtensa port
Date: Thu, 11 May 2023 06:03:23 +0000 [thread overview]
Message-ID: <1cb9e9f8c8e4e1df52b439184333d628b3532f65.camel@espressif.com> (raw)
Here is a reworked commit from Max Filippov:
https://github.com/espressif/newlib-esp32/commit/3fc2b645bb708421962e68366aa8efbdce93d7e3
Max, I dropped some documentation changes, please review and tell if
you are ok with this.
And I dropped all changes for libm from your original commit because
they aren't used. Except disabling __ieee754_sqrtf implementation from
being compiled into libm (because it exists in libgcc). But I just gave
this function __attribute__((weak))
Also, added libgloss implementation for xtensa (for chips
esp32/esp32s3)
Please consider to apply.
Alexey Lapshin (6):
newlib: add system headers from include/$(sys_dir)/*/*.h
libc: sys: add xtensa port
libm: add xtensa port
libc: add xtensa port
libm: add attribute weak for __ieee754_sqrtf
libgloss: libnosys: add xtensa port
libgloss: add xtensa port
Jeroen Domburg (1):
libc: fix xtensa PSRAM cache bug
libgloss/configure | 5 +
libgloss/configure.in | 3 +
libgloss/libnosys/configure | 2 +
libgloss/libnosys/configure.in | 2 +
libgloss/xtensa/Makefile | 321 ++
libgloss/xtensa/Makefile.in | 317 ++
libgloss/xtensa/app.elf.ld | 190 +
libgloss/xtensa/board.elf.specs | 5 +
libgloss/xtensa/boards/esp32/board.c | 20 +
.../xtensa/boards/esp32/include/soc/cpu.h | 11 +
.../xtensa/boards/esp32/include/soc/uart.h | 19 +
libgloss/xtensa/boards/esp32/memory.elf.ld | 26 +
libgloss/xtensa/boards/esp32s3/board.c | 20 +
.../xtensa/boards/esp32s3/include/soc/cpu.h | 11 +
.../xtensa/boards/esp32s3/include/soc/uart.h | 19 +
libgloss/xtensa/boards/esp32s3/memory.elf.ld | 26 +
libgloss/xtensa/configure | 3753 +++++++++++++
libgloss/xtensa/configure.in | 45 +
libgloss/xtensa/crt0.S | 31 +
libgloss/xtensa/crt1-boards.S | 226 +
libgloss/xtensa/crt1-sim.S | 204 +
libgloss/xtensa/default.specs | 2 +
libgloss/xtensa/include/register_access.h | 7 +
libgloss/xtensa/include/syscalls.h | 59 +
libgloss/xtensa/include/xtensa/corebits.h | 186 +
libgloss/xtensa/main.c | 10 +
libgloss/xtensa/nano.specs | 18 +
libgloss/xtensa/sim-call.S | 8 +
libgloss/xtensa/sim-vectors.S | 163 +
libgloss/xtensa/sim.elf.specs | 5 +
libgloss/xtensa/sleep.S | 64 +
libgloss/xtensa/sys.openocd.specs | 8 +
libgloss/xtensa/sys.qemu.specs | 8 +
libgloss/xtensa/syscalls.c | 226 +
libgloss/xtensa/window-vectors.S | 252 +
newlib/Makefile.am | 21 +
newlib/Makefile.in | 21 +
newlib/configure.host | 11 +
newlib/libc/include/machine/ieeefp.h | 4 +
newlib/libc/include/machine/setjmp.h | 29 +
newlib/libc/machine/configure | 3 +
newlib/libc/machine/xtensa/Makefile.am | 21 +
newlib/libc/machine/xtensa/Makefile.in | 456 ++
newlib/libc/machine/xtensa/aclocal.m4 | 992 ++++
newlib/libc/machine/xtensa/configure | 4994 +++++++++++++++++
newlib/libc/machine/xtensa/configure.in | 14 +
newlib/libc/machine/xtensa/memcpy.S | 343 ++
newlib/libc/machine/xtensa/memset.S | 193 +
newlib/libc/machine/xtensa/setjmp.S | 260 +
newlib/libc/machine/xtensa/strcmp.S | 778 +++
newlib/libc/machine/xtensa/strcpy.S | 274 +
newlib/libc/machine/xtensa/strlen.S | 115 +
newlib/libc/machine/xtensa/strncpy.S | 274 +
newlib/libc/machine/xtensa/xtensa-asm.h | 72 +
newlib/libc/machine/xtensa/xtensa.tex | 72 +
newlib/libc/sys/configure | 3 +
newlib/libc/sys/xtensa/Makefile.am | 14 +
newlib/libc/sys/xtensa/Makefile.in | 388 ++
newlib/libc/sys/xtensa/_atexit.c | 53 +
newlib/libc/sys/xtensa/aclocal.m4 | 880 +++
newlib/libc/sys/xtensa/clibrary_init.c | 42 +
newlib/libc/sys/xtensa/configure | 4623 +++++++++++++++
newlib/libc/sys/xtensa/configure.in | 14 +
newlib/libc/sys/xtensa/creat.c | 9 +
newlib/libc/sys/xtensa/crt0.c | 16 +
newlib/libc/sys/xtensa/include/fenv.h | 88 +
newlib/libc/sys/xtensa/include/unistd.h | 13 +
.../xtensa/include/xtensa/config/core-isa.h | 655 +++
newlib/libc/sys/xtensa/isatty.c | 18 +
newlib/libc/sys/xtensa/sys/file.h | 33 +
newlib/libm/machine/configure | 3 +
newlib/libm/machine/xtensa/Makefile.am | 21 +
newlib/libm/machine/xtensa/Makefile.in | 467 ++
newlib/libm/machine/xtensa/aclocal.m4 | 880 +++
newlib/libm/machine/xtensa/configure | 4623 +++++++++++++++
newlib/libm/machine/xtensa/configure.in | 14 +
newlib/libm/machine/xtensa/feclearexcept.c | 49 +
newlib/libm/machine/xtensa/fegetenv.c | 56 +
newlib/libm/machine/xtensa/fegetexcept.c | 67 +
newlib/libm/machine/xtensa/fegetexceptflag.c | 64 +
newlib/libm/machine/xtensa/fegetround.c | 50 +
newlib/libm/machine/xtensa/feholdexcept.c | 55 +
newlib/libm/machine/xtensa/feraiseexcept.c | 50 +
newlib/libm/machine/xtensa/fetestexcept.c | 41 +
newlib/libm/machine/xtensa/feupdateenv.c | 45 +
newlib/libm/math/ef_sqrt.c | 1 +
87 files changed, 28556 insertions(+), 2 deletions(-)
create mode 100644 libgloss/xtensa/Makefile
create mode 100644 libgloss/xtensa/Makefile.in
create mode 100644 libgloss/xtensa/app.elf.ld
create mode 100644 libgloss/xtensa/board.elf.specs
create mode 100644 libgloss/xtensa/boards/esp32/board.c
create mode 100644 libgloss/xtensa/boards/esp32/include/soc/cpu.h
create mode 100644 libgloss/xtensa/boards/esp32/include/soc/uart.h
create mode 100644 libgloss/xtensa/boards/esp32/memory.elf.ld
create mode 100644 libgloss/xtensa/boards/esp32s3/board.c
create mode 100644 libgloss/xtensa/boards/esp32s3/include/soc/cpu.h
create mode 100644 libgloss/xtensa/boards/esp32s3/include/soc/uart.h
create mode 100644 libgloss/xtensa/boards/esp32s3/memory.elf.ld
create mode 100755 libgloss/xtensa/configure
create mode 100644 libgloss/xtensa/configure.in
create mode 100644 libgloss/xtensa/crt0.S
create mode 100644 libgloss/xtensa/crt1-boards.S
create mode 100644 libgloss/xtensa/crt1-sim.S
create mode 100644 libgloss/xtensa/default.specs
create mode 100644 libgloss/xtensa/include/register_access.h
create mode 100644 libgloss/xtensa/include/syscalls.h
create mode 100644 libgloss/xtensa/include/xtensa/corebits.h
create mode 100644 libgloss/xtensa/main.c
create mode 100644 libgloss/xtensa/nano.specs
create mode 100644 libgloss/xtensa/sim-call.S
create mode 100644 libgloss/xtensa/sim-vectors.S
create mode 100644 libgloss/xtensa/sim.elf.specs
create mode 100644 libgloss/xtensa/sleep.S
create mode 100644 libgloss/xtensa/sys.openocd.specs
create mode 100644 libgloss/xtensa/sys.qemu.specs
create mode 100644 libgloss/xtensa/syscalls.c
create mode 100644 libgloss/xtensa/window-vectors.S
create mode 100644 newlib/libc/machine/xtensa/Makefile.am
create mode 100644 newlib/libc/machine/xtensa/Makefile.in
create mode 100644 newlib/libc/machine/xtensa/aclocal.m4
create mode 100755 newlib/libc/machine/xtensa/configure
create mode 100644 newlib/libc/machine/xtensa/configure.in
create mode 100644 newlib/libc/machine/xtensa/memcpy.S
create mode 100644 newlib/libc/machine/xtensa/memset.S
create mode 100644 newlib/libc/machine/xtensa/setjmp.S
create mode 100644 newlib/libc/machine/xtensa/strcmp.S
create mode 100644 newlib/libc/machine/xtensa/strcpy.S
create mode 100644 newlib/libc/machine/xtensa/strlen.S
create mode 100644 newlib/libc/machine/xtensa/strncpy.S
create mode 100644 newlib/libc/machine/xtensa/xtensa-asm.h
create mode 100644 newlib/libc/machine/xtensa/xtensa.tex
create mode 100644 newlib/libc/sys/xtensa/Makefile.am
create mode 100644 newlib/libc/sys/xtensa/Makefile.in
create mode 100644 newlib/libc/sys/xtensa/_atexit.c
create mode 100644 newlib/libc/sys/xtensa/aclocal.m4
create mode 100644 newlib/libc/sys/xtensa/clibrary_init.c
create mode 100755 newlib/libc/sys/xtensa/configure
create mode 100644 newlib/libc/sys/xtensa/configure.in
create mode 100644 newlib/libc/sys/xtensa/creat.c
create mode 100644 newlib/libc/sys/xtensa/crt0.c
create mode 100644 newlib/libc/sys/xtensa/include/fenv.h
create mode 100644 newlib/libc/sys/xtensa/include/unistd.h
create mode 100644 newlib/libc/sys/xtensa/include/xtensa/config/core-
isa.h
create mode 100644 newlib/libc/sys/xtensa/isatty.c
create mode 100644 newlib/libc/sys/xtensa/sys/file.h
create mode 100644 newlib/libm/machine/xtensa/Makefile.am
create mode 100644 newlib/libm/machine/xtensa/Makefile.in
create mode 100644 newlib/libm/machine/xtensa/aclocal.m4
create mode 100755 newlib/libm/machine/xtensa/configure
create mode 100644 newlib/libm/machine/xtensa/configure.in
create mode 100644 newlib/libm/machine/xtensa/feclearexcept.c
create mode 100644 newlib/libm/machine/xtensa/fegetenv.c
create mode 100644 newlib/libm/machine/xtensa/fegetexcept.c
create mode 100644 newlib/libm/machine/xtensa/fegetexceptflag.c
create mode 100644 newlib/libm/machine/xtensa/fegetround.c
create mode 100644 newlib/libm/machine/xtensa/feholdexcept.c
create mode 100644 newlib/libm/machine/xtensa/feraiseexcept.c
create mode 100644 newlib/libm/machine/xtensa/fetestexcept.c
create mode 100644 newlib/libm/machine/xtensa/feupdateenv.c
--
2.34.1
next reply other threads:[~2023-05-11 6:03 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-11 6:03 Alexey Lapshin [this message]
2023-05-11 6:05 ` [PATCH, RFC 1/8] newlib: add system headers from include/$(sys_dir)/*/*.h Alexey Lapshin
2023-05-11 6:12 ` [PATCH, RFC 2/8] libc: sys: add xtensa port Alexey Lapshin
2023-05-11 6:18 ` [PATCH, RFC 3/8] libm: " Alexey Lapshin
2023-05-11 6:20 ` [PATCH, RFC 4/8] libc: " Alexey Lapshin
2023-05-11 6:21 ` [PATCH, RFC 5/8] libm: add attribute weak for __ieee754_sqrtf Alexey Lapshin
2023-05-11 6:22 ` [PATCH, RFC 6/8] libgloss: libnosys: add xtensa port Alexey Lapshin
2023-05-11 6:23 ` [PATCH, RFC 7/8] libgloss: " Alexey Lapshin
2023-05-11 6:25 ` [PATCH, RFC 8/8] libc: fix xtensa PSRAM cache bug Alexey Lapshin
2023-05-12 9:18 ` [PATCH, RFC 0/8] add xtensa port Max Filippov
2023-05-15 13:45 ` [PATCH, RFC v2 " Alexey Lapshin
2023-05-15 13:47 ` [PATCH, RFC v2 1/8] newlib: add system headers from include/$(sys_dir)/*/*.h Alexey Lapshin
2023-05-15 13:48 ` [PATCH, RFC v2 2/8] libc: sys: add xtensa port Alexey Lapshin
2023-05-15 13:49 ` [PATCH, RFC v2 3/8] libm: " Alexey Lapshin
2023-05-15 13:50 ` [PATCH, RFC v2 4/8] libc: " Alexey Lapshin
2023-05-15 13:51 ` [PATCH, RFC v2 5/8] libm: add attribute weak for __ieee754_sqrtf Alexey Lapshin
2023-05-15 13:53 ` [PATCH, RFC v2 6/8] libgloss: libnosys: add xtensa port Alexey Lapshin
2023-05-15 13:54 ` [PATCH, RFC v2 7/8] libgloss: " Alexey Lapshin
2023-05-15 13:55 ` [PATCH, RFC v2 8/8] libc: xtensa: fix PSRAM cache bug Alexey Lapshin
2023-05-30 19:58 ` [PATCH, RFC v2 0/8] add xtensa port Jeff Johnston
2023-05-31 7:53 ` Alexey Lapshin
2023-08-09 20:00 ` [PATCH, RFC v3 0/3] " Alexey Lapshin
2023-08-09 20:02 ` [PATCH, RFC v3 1/3] libc: fix nested sys-include dirs install Alexey Lapshin
2023-08-09 20:03 ` [PATCH, RFC v3 2/3] newlib: add Xtensa port Alexey Lapshin
2023-08-09 20:04 ` [PATCH, RFC v3 3/3] libgloss: " Alexey Lapshin
2023-08-10 18:20 ` [PATCH, RFC v3 0/3] add xtensa port Jeff Johnston
2023-08-10 19:50 ` Alexey Lapshin
2023-08-10 22:12 ` Jeff Johnston
2023-08-10 22:15 ` Alexey Lapshin
2023-08-10 22:18 ` Jeff Johnston
2023-08-15 7:20 ` Alexey Lapshin
2023-08-15 14:48 ` Jeff Johnston
2023-08-15 15:07 ` Alexey Lapshin
2023-08-15 17:53 ` Jeff Johnston
2023-08-15 19:20 ` Alexey Lapshin
2023-08-15 22:09 ` Jeff Johnston
2023-08-16 7:46 ` Alexey Lapshin
2023-08-16 18:55 ` Jeff Johnston
2023-08-17 20:38 ` Alexey Lapshin
2023-08-17 22:25 ` Jeff Johnston
2023-08-18 10:13 ` Alexey Lapshin
2023-08-23 20:57 ` Jeff Johnston
2023-08-23 21:28 ` Alexey Lapshin
2023-08-24 15:01 ` Jeff Johnston
2023-08-24 15:45 ` Alexey Lapshin
2023-09-11 12:07 ` [PATCH, RFC 0/8] " Sebastian Huber
2023-09-11 12:15 ` Alexey Lapshin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1cb9e9f8c8e4e1df52b439184333d628b3532f65.camel@espressif.com \
--to=alexey.lapshin@espressif.com \
--cc=alexey.gerenkov@espressif.com \
--cc=ivan@espressif.com \
--cc=jcmvbkbc@gmail.com \
--cc=newlib@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).