From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Received: (qmail 16780 invoked from network); 15 Apr 2020 16:30:29 -0000 Received-SPF: pass (mother.openwall.net: domain of lists.openwall.com designates 195.42.179.200 as permitted sender) receiver=inbox.vuxu.org; client-ip=195.42.179.200 envelope-from= Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with UTF8ESMTPZ; 15 Apr 2020 16:30:29 -0000 Received: (qmail 15817 invoked by uid 550); 15 Apr 2020 16:30:28 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 15799 invoked from network); 15 Apr 2020 16:30:27 -0000 Date: Wed, 15 Apr 2020 12:30:15 -0400 From: Rich Felker To: sidneym@codeaurora.org Cc: musl@lists.openwall.com Message-ID: <20200415163015.GG11469@brightrain.aerifal.cx> References: <000a01d61328$7f2614b0$7d723e10$@codeaurora.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <000a01d61328$7f2614b0$7d723e10$@codeaurora.org> User-Agent: Mutt/1.5.21 (2010-09-15) Subject: Re: [musl] Hexagon DSP support On Wed, Apr 15, 2020 at 08:19:29AM -0500, sidneym@codeaurora.org wrote: > Recently work has been done with clang/llvm/lld to extend support for > Qualcomm's Hexagon DSP to a Linux target. At this point the publicly > available LLVM tools are able to build and run Hexagon programs via QEMU. > I've attached a patch that add the Hexagon bits to musl. The optimized > routines have been purposely omitted to keep the size and complexity to a > minimum. > > The changes are being mirrored here: > https://github.com/quic/musl/tree/hexagon > The QEMU mirror is here: https://github.com/quic/qemu > A description of the assembly language is here: > https://developer.qualcomm.com/download/hexagon/hexagon-v5x-programmers-refe > rence-manual.pdf?referrer=node/6116 > > The objective is to have enough freely available tools and libraries that > any user could develop code for the DSP. The C-library is an important part > of that stack and this patch is intended to start a discussion of what would > need to happen in order for Hexagon to be added to the musl sources. Thanks for reaching out upstream and sharing this. I did a quick glance over the port (mostly just arch/hexagon dir, not source dirs in any detail) and what I've read so far looks good. One question I have: alltypes.h.in defines _REDIR_TIME64. Is this because there's an existing unofficial ABI in deployments that you don't want to break? If so that's probably okay, but if not it's not necessary or wanted for new 32-bit archs to define this; if it's not defined, the unadorned symbol names will just be 64-bit versions, just like on 64-bit archs. > I've tested this using libc-test (git://repo.or.cz/libc-test) and 56 errors > are reported. The support for Hexagon in QEMU is on-going and while some of > the errors (math) may be attributed to QEMU most also happen on hardware. A > good chunk fail due to floating point exception status or precision. Can you send the output report to the list or post it somewhere publicly accessible? I can probably give you a quick rundown on whether any of the failures are unexpected (on qemu or real hardware) and it will suggest which parts of the source I (and others in the community) should focus on reviewing. Rich