public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* 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).