Commit 42f40af4 by H.J. Lu Committed by H.J. Lu

Define __crc32q only if __SSE4_2__ is defined.

2010-05-24  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/ia32intrin.h (__crc32q): Define only if
	__SSE4_2__ is defined.

From-SVN: r159783
parent 00f93def
2010-05-24 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/ia32intrin.h (__crc32q): Define only if
__SSE4_2__ is defined.
2010-05-24 Iain Sandoe <iains@gcc.gnu.org> 2010-05-24 Iain Sandoe <iains@gcc.gnu.org>
PR target/44132 PR target/44132
......
...@@ -178,6 +178,7 @@ __bswapq (long long __X) ...@@ -178,6 +178,7 @@ __bswapq (long long __X)
return __builtin_bswap64 (__X); return __builtin_bswap64 (__X);
} }
#ifdef __SSE4_2__
/* 64bit accumulate CRC32 (polynomial 0x11EDC6F41) value. */ /* 64bit accumulate CRC32 (polynomial 0x11EDC6F41) value. */
extern __inline unsigned long long extern __inline unsigned long long
__attribute__((__gnu_inline__, __always_inline__, __artificial__)) __attribute__((__gnu_inline__, __always_inline__, __artificial__))
...@@ -185,6 +186,7 @@ __crc32q (unsigned long long __C, unsigned long long __V) ...@@ -185,6 +186,7 @@ __crc32q (unsigned long long __C, unsigned long long __V)
{ {
return __builtin_ia32_crc32di (__C, __V); return __builtin_ia32_crc32di (__C, __V);
} }
#endif
/* 64bit popcnt */ /* 64bit popcnt */
extern __inline long long extern __inline long long
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment