diff options
Diffstat (limited to 'gcc/ada/s-tasini.ads')
-rw-r--r-- | gcc/ada/s-tasini.ads | 35 |
1 files changed, 11 insertions, 24 deletions
diff --git a/gcc/ada/s-tasini.ads b/gcc/ada/s-tasini.ads index 56381c60bcf..1128739e8a2 100644 --- a/gcc/ada/s-tasini.ads +++ b/gcc/ada/s-tasini.ads @@ -6,9 +6,9 @@ -- -- -- S p e c -- -- -- --- $Revision: 1.24 $ +-- $Revision$ -- -- --- Copyright (C) 1992-1999, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2001, 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- -- @@ -29,32 +29,18 @@ -- covered by the GNU Public License. -- -- -- -- GNARL was developed by the GNARL team at Florida State University. It is -- --- now maintained by Ada Core Technologies Inc. in cooperation with Florida -- --- State University (http://www.gnat.com). -- +-- now maintained by Ada Core Technologies, Inc. (http://www.gnat.com). -- -- -- ------------------------------------------------------------------------------ -- This package provides overall initialization of the tasking portion of the -- RTS. This package must be elaborated before any tasking features are used. --- It also contains initialization for Ada Task Control Block (ATCB) records. package System.Tasking.Initialization is procedure Remove_From_All_Tasks_List (T : Task_ID); -- Remove T from All_Tasks_List. - - ------------------------------------------------ - -- Static (Compile-Time) Configuration Flags -- - ------------------------------------------------ - - -- ????? - -- Maybe this does not belong here? Where else? - -- For now, it is here because so is Change_Base_Priority, - -- and the two are used together. - - Dynamic_Priority_Support : constant Boolean := True; - -- Should we poll for pending base priority changes at every - -- abort completion point? + -- Call this function with RTS_Lock taken. --------------------------------- -- Tasking-Specific Soft Links -- @@ -89,9 +75,7 @@ package System.Tasking.Initialization is -- 1) base priority changes - -- 2) exceptions that need to be raised - - -- 3) abort/ATC + -- 2) abort/ATC -- Abort deferral MAY be nested (Self_ID.Deferral_Level is a count), -- but to avoid waste and undetected errors, it generally SHOULD NOT @@ -119,10 +103,10 @@ package System.Tasking.Initialization is -- deferred, and do not modify the deferral level. -- There is also a set of non-linable defer/undefer routines, - -- for direct call from the compiler. These are not in-lineable + -- for direct call from the compiler. These are not in-lineable -- because they may need to be called via pointers ("soft links"). -- For the sake of efficiency, the version with Self_ID as parameter - -- should used wherever possible. These are all nestable. + -- should used wherever possible. These are all nestable. -- Non-nestable inline versions -- @@ -141,7 +125,7 @@ package System.Tasking.Initialization is pragma Inline (Undefer_Abort_Nestable); -- NON-INLINE versions without Self_ID for code generated by the - -- expander and for hard links + -- expander and for soft links procedure Defer_Abortion; procedure Undefer_Abortion; @@ -172,7 +156,10 @@ package System.Tasking.Initialization is ---------------------- procedure Task_Lock (Self_ID : Task_ID); + pragma Inline (Task_Lock); + procedure Task_Unlock (Self_ID : Task_ID); + pragma Inline (Task_Unlock); -- These are versions of Lock_Task and Unlock_Task created for use -- within the GNARL. |