首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VS2005中的SSE4指令?

VS2005中的SSE4指令?
EN

Stack Overflow用户
提问于 2008-12-11 23:00:52
回答 2查看 983关注 0票数 3

我需要在使用Visual Stdio 2005编译的项目中使用popcnt指令

固有的__popcnt()只适用于VS2008,即使我在__asm {}块中编写,编译器似乎也无法识别该指令。

有没有办法做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2008-12-12 01:45:49

好吧,这只是个胡乱猜测,但是...假设你已经设置了像this这样的VS2005来做汇编语言,那么你可以从英特尔获得SSE4.1 manual,并按照masm32.com上的这个thread为你需要的每个SSE4.1操作码编写一个宏(它讨论了一个类似的问题w.r.t.SSE2。)

例如,下面是从masm32链接下载的代码:

代码语言:javascript
复制
;SSE2 macros for MASM 6.14 by daydreamer aka Magnus Svensson

ADDPD MACRO M1,M2
    db 066h
    ADDPS M1,M2
ENDM

ADDSD MACRO M1,M2
    DB 0F2H
    ADDPS M1,M2
ENDM
票数 3
EN

Stack Overflow用户

发布于 2009-02-03 12:19:17

注意,您可以使用__emit将字节放入VC++中的__asm块中。在很多情况下,这比链接masm生成的对象更容易。我以前在SSE3是新的时候使用过这个(VS2003不支持操作码)。

所有操作码都是well documented by Intel

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

https://stackoverflow.com/questions/361330

复制
相关文章

相似问题

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