OSDN Git Service

Use sched_yield() instead of pthread_yield().
authorNicolas Capens <capn@google.com>
Mon, 23 Mar 2015 05:56:39 +0000 (01:56 -0400)
committerGreg Hartman <ghartman@google.com>
Mon, 23 Mar 2015 17:17:05 +0000 (17:17 +0000)
pthread_yield() is non-standard and not available on Android.
shed_yield() is a POSIX standard function.

Change-Id: I093047031dd0b35a28724540aaddeb3f5ba849bc
Reviewed-on: https://swiftshader-review.googlesource.com/2682
Tested-by: Nicolas Capens <capn@google.com>
Reviewed-by: Greg Hartman <ghartman@google.com>
Tested-by: Greg Hartman <ghartman@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
src/Common/Thread.hpp

index 8948fed..3f5d867 100644 (file)
@@ -20,6 +20,7 @@
        #include <intrin.h>\r
 #else\r
        #include <pthread.h>\r
+       #include <sched.h>\r
        #include <unistd.h>\r
        #define TLS_OUT_OF_INDEXES (~0)\r
 #endif\r
@@ -110,7 +111,7 @@ namespace sw
                #elif defined(__APPLE__)\r
                        pthread_yield_np();\r
                #else\r
-                       pthread_yield();\r
+                       sched_yield();\r
                #endif\r
        }\r
 \r