diff options
Diffstat (limited to 'gcc/ada/s-taskin.ads')
-rw-r--r-- | gcc/ada/s-taskin.ads | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/gcc/ada/s-taskin.ads b/gcc/ada/s-taskin.ads index 045f176db02..85f8dfc6af7 100644 --- a/gcc/ada/s-taskin.ads +++ b/gcc/ada/s-taskin.ads @@ -106,6 +106,7 @@ package System.Tasking is type Ada_Task_Control_Block; type Task_Id is access all Ada_Task_Control_Block; + for Task_Id'Size use System.Task_Primitives.Task_Address_Size; Null_Task : constant Task_Id; @@ -117,9 +118,11 @@ package System.Tasking is -- from the run-time system. function To_Task_Id is - new Ada.Unchecked_Conversion (System.Address, Task_Id); + new Ada.Unchecked_Conversion + (System.Task_Primitives.Task_Address, Task_Id); function To_Address is - new Ada.Unchecked_Conversion (Task_Id, System.Address); + new Ada.Unchecked_Conversion + (Task_Id, System.Task_Primitives.Task_Address); ----------------------- -- Enumeration types -- @@ -340,7 +343,7 @@ package System.Tasking is -- Abnormal means that the task terminates because it is being aborted -- handled_Exception means that the task terminates because of exception - -- raised by by the execution of its task_body. + -- raised by the execution of its task_body. type Termination_Handler is access protected procedure (Cause : Cause_Of_Termination; @@ -492,6 +495,11 @@ package System.Tasking is -- Activator writes it, once, before Self starts executing. Thereafter, -- Self only reads it. + Task_Alternate_Stack : System.Address; + -- The address of the alternate signal stack for this task, if any + -- + -- Protection: Only accessed by Self + Task_Entry_Point : Task_Procedure_Access; -- Information needed to call the procedure containing the code for -- the body of this task. @@ -801,7 +809,8 @@ package System.Tasking is ------------------------------------ type Access_Address is access all System.Address; - -- Comment on what this is used for ??? + -- Anonymous pointer used to implement task attributes (see s-tataat.adb + -- and a-tasatt.adb) pragma No_Strict_Aliasing (Access_Address); -- This type is used in contexts where aliasing may be an issue (see |