re PR libstdc++/33578 (__gnu_parallel::yield means what?)
PR libstdc++/33578 * include/parallel/compatibility.h. Use POSIX sched_yield on __CYGWIN__ (Sleep): Add prototype for __MINGW32__. From-SVN: r129219
This commit is contained in:
parent
b0bb87a862
commit
cccc4450ce
2 changed files with 17 additions and 2 deletions
|
@ -1,3 +1,10 @@
|
|||
2007-10-11 Danny Smith <dannysmith@users.sourceforge.net>
|
||||
|
||||
PR libstdc++/33578
|
||||
* include/parallel/compatibility.h. Use POSIX sched_yield on
|
||||
__CYGWIN__
|
||||
(Sleep): Add prototype for __MINGW32__.
|
||||
|
||||
2007-10-10 Jason Merrill <jason@redhat.com>
|
||||
|
||||
* libsupc++/guard.cc (struct mutex_wrapper): Move into
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
#include <sys/atomic.h>
|
||||
#endif
|
||||
|
||||
#if !defined(_WIN32)
|
||||
#if !defined(_WIN32) || defined (__CYGWIN__)
|
||||
#include <sched.h>
|
||||
#endif
|
||||
|
||||
|
@ -56,6 +56,14 @@
|
|||
#undef min
|
||||
#endif
|
||||
|
||||
#ifdef __MINGW32__
|
||||
// Including <windows.h> will drag in all the windows32 names. Since
|
||||
// that can cause user code portability problems, we just declare the
|
||||
// one needed function here.
|
||||
extern "C"
|
||||
__attribute((dllimport)) void __attribute__((stdcall)) Sleep (unsigned long);
|
||||
#endif
|
||||
|
||||
namespace __gnu_parallel
|
||||
{
|
||||
#if defined(__ICC)
|
||||
|
@ -327,7 +335,7 @@ namespace __gnu_parallel
|
|||
inline void
|
||||
yield()
|
||||
{
|
||||
#ifdef _WIN32
|
||||
#if defined (_WIN32) && !defined (__CYGWIN__)
|
||||
Sleep(0);
|
||||
#else
|
||||
sched_yield();
|
||||
|
|
Loading…
Add table
Reference in a new issue