xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.

gcc/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.

libgomp/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

	* config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
	* testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.

libitm/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

	* config/x86/target.h (cpu_relax): Use __builtin_ia32_pause.

From-SVN: r189194
This commit is contained in:
Uros Bizjak 2012-07-03 09:24:10 +02:00
parent 43283548c1
commit 68a12ef35b
7 changed files with 20 additions and 7 deletions

View File

@ -1,3 +1,7 @@
2012-07-03 Uros Bizjak <ubizjak@gmail.com>
* config/i386/xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.
2012-07-03 Roland McGrath <mcgrathr@google.com>
* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the

View File

@ -1225,7 +1225,7 @@ _mm_sfence (void)
extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
_mm_pause (void)
{
__asm__ __volatile__ ("rep; nop" : : );
__builtin_ia32_pause ();
}
/* Transpose the 4x4 matrix composed of row[0-3]. */

View File

@ -1,7 +1,12 @@
2012-07-03 Uros Bizjak <ubizjak@gmail.com>
* config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
* testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
2012-07-02 Richard Guenther <rguenther@suse.de>
Michael Matz <matz@suse.de>
Tobias Grosser <tobias@grosser.es>
Sebastian Pop <sebpop@gmail.com>
Michael Matz <matz@suse.de>
Tobias Grosser <tobias@grosser.es>
Sebastian Pop <sebpop@gmail.com>
* testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
* testsuite/libgomp.graphite/force-parallel-5.c: Likewise.

View File

@ -143,5 +143,5 @@ futex_wake (int *addr, int count)
static inline void
cpu_relax (void)
{
__asm volatile ("rep; nop" : : : "memory");
__builtin_ia32_pause ();
}

View File

@ -100,7 +100,7 @@ static inline void
busy_wait (void)
{
#if defined __i386__ || defined __x86_64__
__asm volatile ("rep; nop" : : : "memory");
__builtin_ia32_pause ();
#elif defined __ia64__
__asm volatile ("hint @pause" : : : "memory");
#elif defined __sparc__ && (defined __arch64__ || defined __sparc_v9__)

View File

@ -1,3 +1,7 @@
2012-07-31 Uros Bizjak <ubizjak@gmail.com>
* config/x86/target.h (cpu_relax): Use __builtin_ia32_pause.
2012-05-21 Patrick Marlier <patrick.marlier@gmail.com>
* eh_cpp.cc: Fix __cxa_end_catch declaration.

View File

@ -63,7 +63,7 @@ typedef struct gtm_jmpbuf
static inline void
cpu_relax (void)
{
__asm volatile ("rep; nop" : : : "memory");
__builtin_ia32_pause ();
}
} // namespace GTM