From: Alexey Lapshin <alexey.lapshin@espressif.com>
To: "jjohnstn@redhat.com" <jjohnstn@redhat.com>
Cc: Alexey Gerenkov <alexey.gerenkov@espressif.com>,
"newlib@sourceware.org" <newlib@sourceware.org>,
"jcmvbkbc@gmail.com" <jcmvbkbc@gmail.com>,
Ivan Grokhotkov <ivan@espressif.com>
Subject: Re: [PATCH, RFC v2 0/8] add xtensa port
Date: Wed, 31 May 2023 07:53:35 +0000 [thread overview]
Message-ID: <b2b921a494d51674d64581a0d55d45be8bad5821.camel@espressif.com> (raw)
In-Reply-To: <CAOox84tSGRKFmML-kt0hto=ybVbEcOXiH5Vb1MfUQbrhAF9x4w@mail.gmail.com>
Thank you for the feedback!
After I upgrade to latest newlib and do some tests I will resend the patches.
On Tue, 2023-05-30 at 15:58 -0400, Jeff Johnston wrote:
> Hi Alexey,
>
> Sorry for the delay on posting a review for this set of patches.
>
> There are a number of issues. Most of them stem from the fact that this patch isn't in sync with latest newlib which has simplified configuration.
> For example, newlib/libc machine and sys directories now have a Makefile.inc file in them as opposed to configuration files such asconfigure.in or Makefile.am.
> In libgloss, configuration has been moved from sub-directories up to the top-levelconfigure.ac.
>
> I also would like to see your header file install issue addressed differently. Right now, the top-level Makefile.am is assuming that there are no directories
> in include/machine/sys directories so it is using basename and installing the headers directly. This logic should be changed to recognize sub-directories
> and install appropriately. Changing that logic would solve your problem and any other ports in the future.
>
> Regards,
>
> -- Jeff J.
>
>
>
> On Mon, May 15, 2023 at 9:45 AM Alexey Lapshin <alexey.lapshin@espressif.com> wrote:
> > On Fri, 2023-05-12 at 02:18 -0700, Max Filippov wrote:
> > > The patches are line-wrapped and cannot be applied as is.
> >
> > Resend with fixed formatting:
> >
> > Alexey Lapshin (7):
> > 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: xtensa: fix 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 | 19 +
> > .../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 | 19 +
> > .../xtensa/boards/esp32s3/include/soc/cpu.h | 11 +
> > .../xtensa/boards/esp32s3/include/soc/uart.h | 19 +
> > libgloss/xtensa/boards/esp32s3/memory.elf.ld | 21 +
> > 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 | 211 +
> > 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 | 4763 +++++++++++++++++
> > 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 +
> > 86 files changed, 28301 insertions(+)
> > 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
> >
next prev parent reply other threads:[~2023-05-31 7:53 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-11 6:03 [PATCH, RFC " Alexey Lapshin
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 [this message]
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=b2b921a494d51674d64581a0d55d45be8bad5821.camel@espressif.com \
--to=alexey.lapshin@espressif.com \
--cc=alexey.gerenkov@espressif.com \
--cc=ivan@espressif.com \
--cc=jcmvbkbc@gmail.com \
--cc=jjohnstn@redhat.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).