diff options
Diffstat (limited to 'lang/gnat/files/5ftaspri.ads')
-rw-r--r-- | lang/gnat/files/5ftaspri.ads | 52 |
1 files changed, 16 insertions, 36 deletions
diff --git a/lang/gnat/files/5ftaspri.ads b/lang/gnat/files/5ftaspri.ads index 9cd6b64d989b..30922667f92e 100644 --- a/lang/gnat/files/5ftaspri.ads +++ b/lang/gnat/files/5ftaspri.ads @@ -1,15 +1,14 @@ ------------------------------------------------------------------------------ -- -- --- GNU ADA RUNTIME LIBRARY (GNARL) COMPONENTS -- +-- GNU ADA RUN-TIME LIBRARY (GNARL) COMPONENTS -- -- -- -- S Y S T E M . T A S K _ P R I M I T I V E S -- -- -- -- S p e c -- --- (Version for new GNARL) -- -- -- --- $Revision: 1.1 $ -- +-- $Revision: 1.1 $ -- -- -- --- Copyright (C) 1991,92,93,94,95,1996 Free Software Foundation, Inc. -- +-- Copyright (C) 1991-1997, Free Software Foundation, Inc. -- -- -- -- GNARL is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -36,35 +35,7 @@ ------------------------------------------------------------------------------ -- This is the FreeBSD PTHREADS version of this package. Contributed --- by Daniel M. Eischen (deischen@iworks.InterWorks.org). - --- DO NOT EDIT this file. --- It was automatically generated from another file by the m4 macro processor. --- The name of the file you should edit is the same as this one, but with --- ".ads" replaced by ".sm4", or --- ".adb" replaced by ".bm4", or --- ".c" replaced by ".cm4", or --- ".dat" replaced by ".tm4" - --- Local options selected: --- __TARGET = i386-unknown-freebsd --- __ARCH = I386 --- __OS = FREEBSD --- __HAS_SIGCONTEXT = 1 --- __HAS_UCONTEXT = 0 --- __THREADS = POSIX_THREADS --- __THREAD_VARIANT = ?? --- __HAS_TIMESPEC = 1 --- __HAS_NANOSLEEP = 1 --- __HAS_CLOCK_GETTIME = 0 --- __HAS_GETTIMEOFDAY = 1 --- __POSIX_THREAD_PRIO_PROTECT = 0 --- __POSIX_THREAD_PRIO_INHERIT = 0 --- __POSIX_THREAD_ATTR_STACKADDR = 1 --- __POSIX_THREAD_ATTR_STACKSIZE = 1 --- __POSIX_THREAD_PRIORITY_SCHEDULING = 0 - --- This package provides low-level support for most tasking features. +-- by Daniel M. Eischen (eischen@vigrid.com). with Interfaces.C; -- used for int @@ -99,6 +70,7 @@ private type Lock is new System.OS_Interface.pthread_mutex_t; type RTS_Lock is new System.OS_Interface.pthread_mutex_t; + type Private_Data is record Thread : aliased System.OS_Interface.pthread_t; pragma Atomic (Thread); @@ -107,30 +79,38 @@ private -- They put the same value (thr_self value). We do not want to -- use lock on those operations and the only thing we have to -- make sure is that they are updated in atomic fashion. - CV : aliased System.OS_Interface.pthread_cond_t; - L : aliased RTS_Lock; + + CV : aliased System.OS_Interface.pthread_cond_t; + + L : aliased RTS_Lock; -- protection for all components is lock L + Current_Priority : Interfaces.C.int := 0; -- Active priority, except that the effects of protected object -- priority ceilings are not reflected. This only reflects explicit -- priority changes and priority inherited through task activation -- and rendezvous. + -- -- Ada 95 notes: In Ada 95, this field will be transferred to the -- Priority field of an Entry_Calls component when an entry call -- is initiated. The Priority of the Entry_Calls component will not -- change for the duration of the call. The accepting task can -- use it to boost its own priority without fear of its changing in -- the meantime. + -- -- This can safely be used in the priority ordering -- of entry queues. Once a call is queued, its priority does not -- change. + -- -- Since an entry call cannot be made while executing -- a protected action, the priority of a task will never reflect a -- priority ceiling change at the point of an entry call. + -- -- Protection: Only written by Self, and only accessed when Acceptor -- accepts an entry or when Created activates, at which points Self is -- suspended. - Stack_Size : Interfaces.c.size_t; + + Stack_Size : Interfaces.C.size_t; -- Requested stack size. -- Protection: Only used by Self. end record; |