aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported
diff options
context:
space:
mode:
authorGravatar Ben Niu <niuben003@gmail.com>2021-03-08 19:43:38 +0000
committerGravatar David Tellenbach <david.tellenbach@me.com>2021-03-10 10:21:31 +0000
commitb8d1857f0d87475016b5c16a6a235efa1fd5e9b5 (patch)
treeca51f499e73035dcd05feb978ea4c16614dd71bc /unsupported
parent853a5c4b843a3f1de5de2a25429eefd62dbd153a (diff)
[MSVC-specific] Define EIGEN_ARCH_x86_64 for native x64 (_M_X64 is defined and _M_ARM64EC is not), and define EIGEN_ARCH_ARM64 for both the native ARM64 (_M_ARM64 is defined) or ARM64EC (_M_ARM64EC is defined). _M_ARM64EC is defined when the code is compiled by MSVC for ARM64EC, a new ARM64 ABI designed to be compatible with x64 application emulation on ARM64. If _M_ARM64EC is defined, _M_X64 and _M_AMD64 are also defined, so x64-specific code (especially intrinsics) is also compiled to ARM64 instructions (compliant with the ARM64EC ABI) for maximum x64 compatibility. Although a majority of x64-specific intrinsics can emulated by ARM64 instructions, it is still a good to simply recompile the native ARM64 code paths to ARM64EC for pure computation tasks, for performance reasons.
Diffstat (limited to 'unsupported')
0 files changed, 0 insertions, 0 deletions