Microsoft yesterday announced ARM64EC (“Emulation Compatible”), a new way to build apps for Windows 11 on ARM. ARM64EC makes it easy for developers to port their existing Win32 apps for Windows 11 on ARM. With Windows 10 on ARM, developers must recompile their Win32 apps for ARM devices. If there are issues, developers should rewrite their entire app for ARM devices.
With the new ARM64EC in Windows 11, developers can incrementally developer their ARM apps. First, they can identify a part of their 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, they can recompile more of the app as ARM64EC to further improve performance and conserve battery life on ARM devices.
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.
Internal teams at Microsoft are already using ARM64EC. In fact, Office team is using ARM64EC in the coming 64-bit Office for ARM so that existing x64 plugins will work without issues in Windows 11 on ARM devices.