Wednesday, July 21, 2021

Windows 11: ARM64EC

Marc Sweetgall:

ARM64EC is a new application binary interface (ABI) for Windows 11 on ARM that runs with native speed and is interoperable with x64. An app, process, or even a module can freely mix and match ARM64EC and x64 as needed. The ARM64EC code in the app will run natively while any x64 code will run using Windows 11 on ARM’s built-in emulation.

[…]

Traditionally, rebuilding an app for ARM has meant recompiling the entire app. The result is a great native experience for the customer that unlocks the full power of the ARM device. However, from a developer perspective, porting an app can be all-or-nothing, since all the binaries within a process need to be rebuilt before a customer can see the benefit.

With ARM64EC, you can choose to start small and build incrementally. You can identify a part of your codebase that would benefit most from native performance and rebuild it as ARM64EC. The rest of the app will remain fully functional as emulated x64, but the recompiled ARM64EC parts will now have native speed. Over time, you can recompile more of the app as ARM64EC to further improve performance and conserve battery life for your app’s customers.

Via Rosyna Keller:

Windows 11 is bringing back the Mixed Mode Manager!

[…]

Instead of allowing arbitrary ARM apps to load arbitrary x64 code in-process, the ARM app needs to have its ABI “massaged” to look more like the x64 ABI.

Previously:

Comments RSS · Twitter

Leave a Comment