summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/gthr-posix.c3
-rw-r--r--gcc/gthr-posix.h8
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/gthr-posix.c b/gcc/gthr-posix.c
index 56bbad28301..b1a2e314569 100644
--- a/gcc/gthr-posix.c
+++ b/gcc/gthr-posix.c
@@ -147,7 +147,7 @@ pthread_self (void)
{
return (pthread_t) 0;
}
-
+#ifdef _POSIX_PRIORITY_SCHEDULING
#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
int
sched_get_priority_max (int policy ATTRIBUTE_UNUSED)
@@ -161,6 +161,7 @@ sched_get_priority_min (int policy ATTRIBUTE_UNUSED)
return 0;
}
#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+#endif /* _POSIX_PRIORITY_SCHEDULING */
int
sched_yield (void)
diff --git a/gcc/gthr-posix.h b/gcc/gthr-posix.h
index 88234daae93..e2b5a573999 100644
--- a/gcc/gthr-posix.h
+++ b/gcc/gthr-posix.h
@@ -74,12 +74,12 @@ typedef pthread_mutex_t __gthread_mutex_t;
#pragma weak pthread_mutex_init
#pragma weak pthread_mutex_destroy
#pragma weak pthread_self
-/* These really should be protected by _POSIX_PRIORITY_SCHEDULING, but
- we use them inside a _POSIX_THREAD_PRIORITY_SCHEDULING block. */
+#ifdef _POSIX_PRIORITY_SCHEDULING
#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
#pragma weak sched_get_priority_max
#pragma weak sched_get_priority_min
#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+#endif /* _POSIX_PRIORITY_SCHEDULING */
#pragma weak sched_yield
#pragma weak pthread_attr_destroy
#pragma weak pthread_attr_init
@@ -187,6 +187,7 @@ __gthread_objc_thread_set_priority (int priority)
return -1;
else
{
+#ifdef _POSIX_PRIORITY_SCHEDULING
#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
pthread_t thread_id = pthread_self ();
int policy;
@@ -216,6 +217,7 @@ __gthread_objc_thread_set_priority (int priority)
return 0;
}
#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+#endif /* _POSIX_PRIORITY_SCHEDULING */
return -1;
}
}
@@ -224,6 +226,7 @@ __gthread_objc_thread_set_priority (int priority)
static inline int
__gthread_objc_thread_get_priority (void)
{
+#ifdef _POSIX_PRIORITY_SCHEDULING
#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
if (__gthread_active_p ())
{
@@ -237,6 +240,7 @@ __gthread_objc_thread_get_priority (void)
}
else
#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+#endif /* _POSIX_PRIORITY_SCHEDULING */
return OBJC_THREAD_INTERACTIVE_PRIORITY;
}