首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为单个函数/文件启用增强指令集

为单个函数/文件启用增强指令集
EN

Stack Overflow用户
提问于 2015-07-24 22:04:10
回答 1查看 893关注 0票数 0

是否可以为visual项目中的单个函数或文件启用增强指令集(SSE/AVX)?我希望有多个针对不同指令集的函数版本,所有这些都在相同的输出二进制文件中。

EN

回答 1

Stack Overflow用户

发布于 2015-07-26 11:08:54

不可能为单个函数或单个文件启用自定义指令集。但是,您可以为单个翻译单元启用自定义指令集,这通常是一个c/cpp文件。请注意,标头中使用的指令集取决于翻译单元的编译方式(其中包括它),并且在不同的cpp文件中可能有所不同。

我假设,如果您用不同的指令集编译不同的cpp文件,那么您就可以将它们链接到一起,产生的二进制文件就可以工作了。实际上,确保调用约定在任何地方都是兼容的是很重要的,我认为它们是兼容的,除非您使用类似于__vectorcall的东西(它至少需要SSE2 BTW)。

如果希望使用多个指令集编译某些函数,则可能需要查看this question。总的来说,它被称为"CPU分派“。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31620479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档