Re: [PATCH] newlib: libc: define _ctype for AArch64 Cygwin
Corinna Vinschen <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <[email protected]> |
On Jun 23 16:45, Richard Earnshaw (lists) wrote: > On 17/06/2025 15:59, Corinna Vinschen wrote: > > Hi Radek, > > > > On Jun 12 07:46, Radek Barton wrote: > >> Hello. > >> > >> This change defines `_ctype_` symbol used in Cygwin for AArch64 the same way as for x86_64. > > > > Thanks for the patch, looks good, but I'm wondering... > > > > The #else branch is for compatibility with 32 bit x86, which we don't > > support anymore, so it could have long gone. Shouldn't we just drop > > the condition and the #else branch entirely? It would clean up this > > code snippet nicely. > > > > Or perhaps there should just be a __CYGWIN32 def that's tested for > code like this. It certainly feels 'sub-optimal' to be testing > specific cpu types. This is cpu-specific, given the leading underscore difference between 32 and 64 bit x86. We don't define __CYGWIN32 anymore for ages. There's only a __CYGWIN__ and the CPU types to choose from. This is just moot, because we don't support 32 bit x86 anymore, and the behaviour for each other CPU is identical. Corinna > > R. > > > What do you think? Do you want to provide the change, perhaps? > > > > > > Thanks, > > Corinna > > > > > >> Radek > >> > >> --- > >> >From 7532c751266a766cb3e289ebd7afb2d2c3d1ff3d Mon Sep 17 00:00:00 2001 > >> From: =?UTF-8?q?Radek=20Barto=C5=88?= <[email protected]> > >> Date: Fri, 6 Jun 2025 16:17:27 +0200 > >> Subject: [PATCH] newlib: libc: define _ctype for AArch64 Cygwin > >> > >> --- > >> newlib/libc/ctype/ctype_.c | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > >> > >> diff --git a/newlib/libc/ctype/ctype_.c b/newlib/libc/ctype/ctype_.c > >> index 32ce4f318..bf403d761 100644 > >> --- a/newlib/libc/ctype/ctype_.c > >> +++ b/newlib/libc/ctype/ctype_.c > >> @@ -95,7 +95,7 @@ char _ctype_b[128 + 256] = { > >> /* For backward compatibility */ > >> char __EXPORT *__ctype_ptr__ = DEFAULT_CTYPE_PTR; > >> > >> -# ifdef __x86_64__ > >> +# if defined(__x86_64__) || defined(__aarch64__) > >> __asm__ (" \n\ > >> .data \n\ > >> .globl _ctype_ \n\ > >> -- > >> 2.49.0.vfs.0.3 > >> > >> > >> > > > >