使用VC++编译代码时,MSDN为您提供使用x86_amd64工具集还是amd64工具集的选择(调用vcvarsall.bat时)。

编译x64代码时,如何在这两者之间进行选择? amd64选项会产生比交叉编译器更有效的x64机器代码吗?

最佳答案

它与效率无关。本机和交叉编译器都将生成相同的机器代码。但是,通过在64位工作站上运行本机64位编译器进程,您将获得一些好处(更大的寄存器,更大的内存空间等)。

本机编译器只能在Windows的64位副本上运行,因此,如果您的工作站是32位,则该编译器甚至无法运行。

交叉编译器即使可以通过WoW在Windows的64位副本上运行,也可以在x86机器上运行。但是,没有理由这样做。

您链接的页面说得很好:

10-01 23:11
查看更多