simd.h

来自「检查当前处理器可用的SIMD指令的类型」· C头文件 代码 · 共 53 行

H
53
字号
/*
SIMD class to detect presence of SIMD version 1.2.0

Copyright (c) 2008 Wong Shao Voon
1.1.0 - Contains the 3DNow, 3DNow+ and MMX+ detection bug fix by Leonardo Tazzini
1.2.0 - Added AMD's SSE4a and SSE5

The Code Project Open License (CPOL)
http://www.codeproject.com/info/cpol10.aspx
*/


// Get SIMD information from CPU.

#ifndef __SIMD_H__
#define __SIMD_H__

class SIMD
{
public:
	SIMD();
// intel SIMD
	bool HasMMX()	{return m_bMMX;}
	bool HasSSE()	{return m_bSSE;}
	bool HasSSE2()	{return m_bSSE2;}
	bool HasSSE3()	{return m_bSSE3;}
	bool HasSSSE3() {return m_bSSSE3;}
	bool HasSSE41() {return m_bSSE41;}
	bool HasSSE42() {return m_bSSE42;}
// AMD SIMD
	bool HasMMXplus()	{return m_bMMXplus;}
	bool Has3Dnow()		{return m_b3Dnow;}
	bool Has3DnowExt()	{return m_b3DnowExt;}
	bool HasSSE4a() {return m_bSSE4a;}
	bool HasSSE5() {return m_bSSE5;}

private:
	void InitParams();
	bool m_bMMX;
	bool m_bMMXplus;
	bool m_bSSE;
	bool m_bSSE2;
	bool m_bSSE3;
	bool m_bSSSE3;
	bool m_bSSE41;
	bool m_bSSE42;
	bool m_bSSE4a;
	bool m_bSSE5;
	bool m_b3Dnow;
	bool m_b3DnowExt;
};

#endif // __SIMD_H__

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?