Commit 7a14a9da by Richard Henderson Committed by Richard Henderson

* config/i386/ia32intrin.h: Protect CRC32 builtins with __SSE4_2__.

From-SVN: r153953
parent ad6d42e1
2009-11-05 Richard Henderson <rth@redhat.com>
* config/i386/ia32intrin.h: Protect CRC32 builtins with __SSE4_2__.
2009-11-05 Paul Brook <paul@codesourcery.com> 2009-11-05 Paul Brook <paul@codesourcery.com>
* config/arm/arm.c (arm_fp_model, arm_fpu_arch, arm_fpu_tune): Remove. * config/arm/arm.c (arm_fp_model, arm_fpu_arch, arm_fpu_tune): Remove.
...@@ -49,6 +49,7 @@ __bswapd (int __X) ...@@ -49,6 +49,7 @@ __bswapd (int __X)
return __builtin_bswap32 (__X); return __builtin_bswap32 (__X);
} }
#ifdef __SSE4_2__
/* 32bit accumulate CRC32 (polynomial 0x11EDC6F41) value. */ /* 32bit accumulate CRC32 (polynomial 0x11EDC6F41) value. */
extern __inline unsigned int extern __inline unsigned int
__attribute__((__gnu_inline__, __always_inline__, __artificial__)) __attribute__((__gnu_inline__, __always_inline__, __artificial__))
...@@ -70,6 +71,7 @@ __crc32d (unsigned int __C, unsigned int __V) ...@@ -70,6 +71,7 @@ __crc32d (unsigned int __C, unsigned int __V)
{ {
return __builtin_ia32_crc32si (__C, __V); return __builtin_ia32_crc32si (__C, __V);
} }
#endif /* SSE4.2 */
/* 32bit popcnt */ /* 32bit popcnt */
extern __inline int extern __inline int
......
/* Test that x86intrin.h is usable with -O -pedantic-errors. */
/* We were using SSE4.2 builtins without the extension available. */
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O -pedantic-errors" } */
#include <x86intrin.h>
int dummy;
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