* Native ARM support for Cygwin [not found] <1918386184.561539.1638929253143.ref@mail.yahoo.com> @ 2021-12-08 2:07 ` Aaron Franke 2021-12-08 11:12 ` Corinna Vinschen 0 siblings, 1 reply; 5+ messages in thread From: Aaron Franke @ 2021-12-08 2:07 UTC (permalink / raw) To: cygwin 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. Thanks, Aaron Franke ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Native ARM support for Cygwin 2021-12-08 2:07 ` Native ARM support for Cygwin Aaron Franke @ 2021-12-08 11:12 ` Corinna Vinschen 2021-12-10 14:18 ` Jon Turney 0 siblings, 1 reply; 5+ messages in thread From: Corinna Vinschen @ 2021-12-08 11:12 UTC (permalink / raw) To: cygwin 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 ¯\_(ツ)_/¯ Corinna ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Native ARM support for Cygwin 2021-12-08 11:12 ` Corinna Vinschen @ 2021-12-10 14:18 ` Jon Turney 2021-12-10 14:58 ` Marco Atzeri 0 siblings, 1 reply; 5+ messages in thread From: Jon Turney @ 2021-12-10 14:18 UTC (permalink / raw) To: The Cygwin Mailing List On 08/12/2021 11:12, Corinna Vinschen wrote: > 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 That FAQ is out of date, since with a sufficiently recent Windows (Windows 11, I think), ARM also has x86_64 emulation (which should be preferred). ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Native ARM support for Cygwin 2021-12-10 14:18 ` Jon Turney @ 2021-12-10 14:58 ` Marco Atzeri 2021-12-10 15:34 ` Arthur Norman 0 siblings, 1 reply; 5+ messages in thread From: Marco Atzeri @ 2021-12-10 14:58 UTC (permalink / raw) To: cygwin On 10.12.2021 15:18, Jon Turney wrote: > On 08/12/2021 11:12, Corinna Vinschen wrote: >> 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 > > That FAQ is out of date, since with a sufficiently recent Windows > (Windows 11, I think), ARM also has x86_64 emulation (which should be > preferred). > I expect a crawling speed when running Cygwin in a ARM x86_64 emulation mode ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Native ARM support for Cygwin 2021-12-10 14:58 ` Marco Atzeri @ 2021-12-10 15:34 ` Arthur Norman 0 siblings, 0 replies; 5+ messages in thread From: Arthur Norman @ 2021-12-10 15:34 UTC (permalink / raw) To: Marco Atzeri; +Cc: cygwin > I expect a crawling speed when running Cygwin in a ARM x86_64 > emulation mode > When I tried that a while ago on a macbook air m1 I was actually quite impressed. I ran windows-10-for-arm within UTM on the Mac. This was back in August and at that time ar least I had some misery with networking in the Windows world. Native ARM code runs with very little slowdown under Windows/UTM but what astonished me was that my own code running under cygwin-x86_64 in that world was maybe only a factor of 3 down on the same code native built on the Mac. So a slowdown but the Mac m1 is sufficiently fast that that is not really a crawl. I have not tried more recently and am concerned with rumours that Microsoft may withdraw x86_64 emulation from W10 (but keep it in W11), and with concerns about windows-for-arm licenses for use in a virtual environment. Arthur ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-12-10 15:34 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <1918386184.561539.1638929253143.ref@mail.yahoo.com> 2021-12-08 2:07 ` Native ARM support for Cygwin Aaron Franke 2021-12-08 11:12 ` Corinna Vinschen 2021-12-10 14:18 ` Jon Turney 2021-12-10 14:58 ` Marco Atzeri 2021-12-10 15:34 ` Arthur Norman
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).