From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by sourceware.org (Postfix) with ESMTPS id 404D53858D20 for ; Tue, 30 May 2023 19:58:49 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 404D53858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685476728; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=HqxOoHEWt0dbpcyut5tO9b+bwXhbg0aLr7+3mV6C3Cw=; b=B8TQ2vstqgDDV3ZsWZQtu70seWyP7g3zhbeWG5ruCalHaJd0vItB3NpWq6GidDiClRmeJz bOzUBwZDtaXc72jboxN5Arls2LTzS6j5000jL095uJLJuVtE9mimGuYuBDiIvwVpeav/3m 90a01SQaqaLmGquYIiBzaDCBuB+7fus= Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-663-U2Lpt7ErNbWtG2iutwj2bA-1; Tue, 30 May 2023 15:58:47 -0400 X-MC-Unique: U2Lpt7ErNbWtG2iutwj2bA-1 Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-3f830918d47so2343311cf.0 for ; Tue, 30 May 2023 12:58:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685476726; x=1688068726; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=HqxOoHEWt0dbpcyut5tO9b+bwXhbg0aLr7+3mV6C3Cw=; b=dg0VPV1BbF98cICZfY4O3NQd6dQdHoy7oTk0XHemyZsTkj7A1YbCLvFjx/UzA7r0p2 XBowUDXe408BLQQc1/NR6A6hPses/0pN7TZlHj2nnA8D4qV2vH2PvQsFcMm5smVrVMPf +sjk5zvk9MID42vu57XCy0RKuyUvW+feAB2Y2LNTl/AhZvImHp/r3UK74dMWbFMKvNXg UONh+fIW3vuWcv2TFhEWT96jha5JAoD25cFGV8126g9TWK4DtKTI2EnMn6eDlFxG3KDP nLh9zfHYSrU04jJf5LQavW2guOEKzbYDdmip4yjObqTp4FQ6qNXWy6y1XP1Z7V21c2oB xdiA== X-Gm-Message-State: AC+VfDzqssf/Py77+tOJl5V21e3oGcphi4bYnW6CE8K6vbD+AgD+JWlE 8k50VRUjF7aHoKP5imoTCAVmhEY7rIeTym1CL1M68mcgK4yFcarcqfGdDhqSpZsRaM1asmOPEJ4 Bhu3KLR+zbNxl0Jv0BASaESK1QK4NbrWroCGt13M= X-Received: by 2002:a05:622a:14cd:b0:3f7:fab0:6308 with SMTP id u13-20020a05622a14cd00b003f7fab06308mr243605qtx.6.1685476726426; Tue, 30 May 2023 12:58:46 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4holwu19wL/vIoVJzBwM0no2H+FqRaPJcGrYP2Egf0Gg1MDafXw/wAW/kpRqH3F8h7BpXQPFNmuLzKE0+/+dI= X-Received: by 2002:a05:622a:14cd:b0:3f7:fab0:6308 with SMTP id u13-20020a05622a14cd00b003f7fab06308mr243589qtx.6.1685476726057; Tue, 30 May 2023 12:58:46 -0700 (PDT) MIME-Version: 1.0 References: <1cb9e9f8c8e4e1df52b439184333d628b3532f65.camel@espressif.com> <15cedffa7c98bea187abe6041c7542db03dbe834.camel@espressif.com> In-Reply-To: <15cedffa7c98bea187abe6041c7542db03dbe834.camel@espressif.com> From: Jeff Johnston Date: Tue, 30 May 2023 15:58:35 -0400 Message-ID: Subject: Re: [PATCH, RFC v2 0/8] add xtensa port To: Alexey Lapshin Cc: "jcmvbkbc@gmail.com" , Alexey Gerenkov , "newlib@sourceware.org" , Ivan Grokhotkov X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/alternative; boundary="00000000000088bd5105fceea10c" X-Spam-Status: No, score=-4.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --00000000000088bd5105fceea10c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 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 as configure.in or Makefile.am. In libgloss, configuration has been moved from sub-directories up to the top-level configure.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=E2=80=AFAM Alexey Lapshin 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 > > -- > 2.34.1 > > --00000000000088bd5105fceea10c--