Native ARM support for Cygwin

Corinna Vinschen
Wed Dec 8 11:12:12 GMT 2021

On Dec  8 02:07, Aaron Franke via Cygwin wrote:
> Hello Cygwin,
> I am wondering what are the plans for adding support for native ARM64
> Windows to Cygwin.
> Currently there are only downloads for x86 (both 32-bit and 64-bit),
> but not for ARM.
> I do see in the FAQ that there is a mention of how ARM systems can run
> the x86 version of Cygwin, however I am interested in a native ARM64
> toolchain if possible. By the way, I'm only interested in 64-bit ARM.

No plans.  To create an ARM64 version of Cygwin we need:

- Toolchains (binutils, gcc, gdb) targeting aarch64-pc-cygwin
  and aarch64-w64-mingw32.

  I don't know if the mingw toolchain already exists, but if so, the
  Cygwin toolchain could be derived from there.  The differences would
  be basically the same as on x86_64 (sizeof(long), different default
  link libs, etc)

- Make sure Mingw-w64 for ARM is working as desired, including the
  special code for Cygwin in there.  AFAIK, Mingw-w64 for ARM64 is still
  in an experimental stage, but I could be wrong.

- Make sure to understand the differences between ARM64 ABI on Windows
  vs. the default aarch64 ABI (if any).

- At least one person who's fluent in aarch64 assembler who will take a
  stab at creating matching aarch64 assembler code snippets in places we
  have x86 and x86_64 assembler today.  We might get away with some
  of the code being in newlib already (memset/memcpy).

- ARM64 Windows and hardware for testing.

I don't see anything of that happen any time soon ¯\_(ツ)_/¯


More information about the Cygwin mailing list