locked
Can I link Intel assembly code to a Windows Store App?

    Question

  • I have an Enterprise style application that currently does video processing using x64 SSE Assembly and is currently in .asm files and linked to a native C++ project.

    Is it possible to link this code statically or dynamically to a Windows Store App?

    Sure it would only run on Intel x64 platforms but that is fine.  I have not been able to find a clear answer on this.

    Wednesday, November 28, 2012 2:14 AM

Answers

  • You can write x86 or x64 assembly in a Windows Store app as long as it fully follows the required ABI, you mark the package appropriately for the architecture, and it doesn't import any DLL exports that trigger the WACK tool validation. The Windows 8.0 SDK includes the x64 assembly macro include file macamd64.inc that makes it possible to create proper x64 ABI assembly modules.

    All that said, if you can rewrite the module to use compiler intrinsics instead that is a much better way to go.

    Note that the Windows 8.0 SDK does not include the required assembly macros for writing correct ARM ABI assembly, so writing ARM assembly for Windows RT apps isn't supported.

    • Marked as answer by GregConnected Wednesday, November 28, 2012 10:34 PM
    Wednesday, November 28, 2012 8:19 PM

All replies

  • You can write x86 or x64 assembly in a Windows Store app as long as it fully follows the required ABI, you mark the package appropriately for the architecture, and it doesn't import any DLL exports that trigger the WACK tool validation. The Windows 8.0 SDK includes the x64 assembly macro include file macamd64.inc that makes it possible to create proper x64 ABI assembly modules.

    All that said, if you can rewrite the module to use compiler intrinsics instead that is a much better way to go.

    Note that the Windows 8.0 SDK does not include the required assembly macros for writing correct ARM ABI assembly, so writing ARM assembly for Windows RT apps isn't supported.

    • Marked as answer by GregConnected Wednesday, November 28, 2012 10:34 PM
    Wednesday, November 28, 2012 8:19 PM
  • Thanks Chuck, that's great information.  You've also answered my next question which would have been, can I port the assembly to ARM for Windows RT.
    Wednesday, November 28, 2012 10:36 PM