WineHQ

ARM64: Difference between revisions

(Initial import)
 
(Add section about x86 Applications)
 
(3 intermediate revisions by the same user not shown)
Line 10: Line 10:
* Backtraces work
* Backtraces work
* WOW64 setup works now
* WOW64 setup works now
* Stubs
* relay tracing


=== Todo ===
=== Todo ===
* Stubs
* relay tracing
* libs/port/interlocked.c: maybe native operations
* libs/port/interlocked.c: maybe native operations
* [[Gecko|wine-gecko]]/[[Mono|wine-mono]] ARM64 port
* [[Gecko|wine-gecko]]/[[Mono|wine-mono]] ARM64 port
Line 20: Line 20:
As of now, we found two ABI incompatibilities:
As of now, we found two ABI incompatibilities:
* [https://bugs.winehq.org/show_bug.cgi?id=38780 Bug 38780 (X18 needs to be preserved)]
* [https://bugs.winehq.org/show_bug.cgi?id=38780 Bug 38780 (X18 needs to be preserved)]
* [https://bugs.winehq.org/show_bug.cgi?id=38886 Bug 38886 (variable arguments ABI)]
* <s>[https://bugs.winehq.org/show_bug.cgi?id=38886 Bug 38886 (variable arguments ABI)]</s>


=== How to help ===
=== How to help ===
Line 36: Line 36:


=== Running Windows arm64 Applications ===
=== Running Windows arm64 Applications ===
The SDK for win10 includes some PEs for arm64, have a look at [https://bugs.winehq.org/show_bug.cgi?id=38714 Bug 38714].
The SDK for win10 includes some PEs for arm64, have a look at <strike>[https://bugs.winehq.org/show_bug.cgi?id=38714 Bug 38714]</strike>.


You may run into ABI problems described above.
You may run into ABI problems described above.
=== Running Windows/x86 Applications ===
See [[Emulation]]


=== See also ===
=== See also ===

Latest revision as of 15:58, 2 July 2018

ARM64 support

Motivation

After my ARM port ARM64 (AArch64) was a logical step and due to my experience with ARM it only took days instead of month.

Again we are faster than the other win32 implementation :), therefore it's a pure Winelib port.

Status

  • Yes, It works! (TM)
  • Patchset was committed on January 16. 2013 and is available since Wine-1.5.22
  • Backtraces work
  • WOW64 setup works now
  • Stubs
  • relay tracing

Todo

ABI Problems

As of now, we found two ABI incompatibilities:

How to help

  • Analyze and/or fix (most likely in GCC) the variable arguments problem.
  • Report bugs with winelib or Windows applications.

Compiling

In the likely case that you don't own ARM64 Hardware at the moment, have a look at Linaro Engineering: ARMv8 activity/downloads,

there you get a cross-toolchain, a bootable system and instruction on how to get the Foundation Model from ARM. (qemu should also work, but i haven't had much success with it yet) For the start run configure like:

../configure --host=aarch64-linux-gnu host_alias=aarch64-linux-gnu --with-wine-tools=../yourotherbuilddir/ --without-freetype --without-x --enable-win64


Running Windows arm64 Applications

The SDK for win10 includes some PEs for arm64, have a look at Bug 38714.

You may run into ABI problems described above.

Running Windows/x86 Applications

See Emulation

See also

André Hentschel

AArch32: ARM

ARM64 commits in Wine

Discussion on linux-arch mailing list


This page was last edited on 2 July 2018, at 15:58.