* gthr-posix.h: Include <unistd.h> for feature tests.
(sched_get_priority_max, sched_get_priority_min)
(pthread_getschedparam, pthread_setschedparam): Only use
if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
(__gthread_objc_thread_set_priority): Don't treat all non-zero
returns from sched_get_priority_max and sched_get_priority_min
as an error.
From-SVN: r58630
* gthr-posix.h (__gthread_active_p): Move __gthread_active_ptr
into the function and constify it.
* gthr-dce.h, gthr-solaris.h: Likewise.
From-SVN: r50741
* gthr-posix.h [LIBOBJC]: Add weak definitions of
sched_get_priority_max, sched_get_priority_min.
testsuite:
* lib/objc.exp (objc_target_compile): Don't need -lposix4 on any
Solaris 2.[678] system.
From-SVN: r43640
(__gthread_objc_init_thread_system): If pthread_key_create fails, it's
not clear what the return value is. This obvious fix makes sure it
always returns -1 if a problem occurs.
From-SVN: r43091
* gthr-posix.h (__gthread_active_ptr): Cast function pointer
to target type to allow ISO C++ compiler to accept it.
* gthr-dce.h (__gthread_active_ptr): Likewise.
* gthr-solaris.h (__gthread_active_ptr): Likewise.
Co-Authored-By: John David Anglin <dave@hiauly1.hia.nrc.ca>
From-SVN: r42725
* Makefile.in (GTHREAD_FLAGS): New var.
(LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
(distclean): Remove gthr-default.h.
* configure.in: Accept dce as a thread package.
Check for thread.h and pthread.h.
Link gthr-default.h to appropriate thread file and set
gthread_flags.
(hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
include multilib definitions from pa/t-dce-thr.
(sparc-*-solaris2*): Enable threads by default, if thread.h or
pthread.h is found, preferring posix threads over solaris ones.
* config/pa/t-dce-thr: New file.
* config/pa/t-pa: Removed multilibs.
* config/sparc/t-sol2: Ditto.
* gthr.h: New file.
* gthr-single.h: New file.
* gthr-posix.h: New file.
* gthr-solaris.h: New file.
* gthr-dce.h: New file.
* libgcc-thr.h: Removed.
* objc/thr-dce.c: New file copied from thr-decosf1.c.
* frame.c: Include gthr.h instead of libgcc-thr.h.
* libgcc2.c: Include gthr.h instead of libgcc-thr.h.
(eh_context_initialize): If __gthread_once fails, use static eh
context.
(eh_context_free): Call __gthread_key_dtor.
From-SVN: r17235