diff options
author | Patrick Bernardi <bernardi@adacore.com> | 2020-08-17 15:32:01 -0400 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2020-10-22 08:11:22 -0400 |
commit | 61d832dee4e62fce2376138f8ab3a05c069237b0 (patch) | |
tree | f64c2776541ebbbcaa1a3ca81c74e779acca75b2 | |
parent | b1f909cfc13f3ea5779e3844509415a54c4b534e (diff) | |
download | gcc-61d832dee4e62fce2376138f8ab3a05c069237b0.zip gcc-61d832dee4e62fce2376138f8ab3a05c069237b0.tar.gz gcc-61d832dee4e62fce2376138f8ab3a05c069237b0.tar.bz2 |
[Ada] Add No_Implicit_Task_Allocations and No_Implicit_PO_Allocations to Jorvik
gcc/ada/
* libgnat/s-rident.ads (Profile_Info): Use a common profile
definition for Jorvik and GNAT Extended Ravenscar, using the
GNAT Extended Ravenscar definition.
-rw-r--r-- | gcc/ada/libgnat/s-rident.ads | 51 |
1 files changed, 9 insertions, 42 deletions
diff --git a/gcc/ada/libgnat/s-rident.ads b/gcc/ada/libgnat/s-rident.ads index afec9a4..662721a 100644 --- a/gcc/ada/libgnat/s-rident.ads +++ b/gcc/ada/libgnat/s-rident.ads @@ -551,9 +551,10 @@ package System.Rident is Max_Task_Entries => 0, others => 0)), - Jorvik => + Jorvik | GNAT_Extended_Ravenscar => - -- Restrictions for Jorvik profile .. + -- Restrictions for Jorvik profile, previously known + -- known as the GNAT_Extended_Ravenscar profile. -- Note: the table entries here only represent the -- required restriction profile for Jorvik. The @@ -567,7 +568,12 @@ package System.Rident is -- as follows: -- 1) Ravenscar includes restriction Simple_Barriers; -- Jorvik includes Pure_Barriers instead. - -- 2) The following 6 restrictions are included in + -- 2) The No_Implicit_Heap_Allocations restriction is + -- lifted and replaced with the following + -- restrictions: + -- No_Implicit_Task_Allocations + -- No_Implicit_Protected_Object_Allocations + -- 3) The following 6 restrictions are included in -- Ravenscar but not in Jorvik: -- No_Implicit_Heap_Allocations -- No_Relative_Delay @@ -598,45 +604,6 @@ package System.Rident is -- plus these additional restrictions: - No_Local_Timing_Events => True, - No_Select_Statements => True, - No_Specific_Termination_Handlers => True, - No_Task_Termination => True, - Pure_Barriers => True, - others => False), - - -- Value settings for Ravenscar (same as Restricted) - - Value => - (Max_Asynchronous_Select_Nesting => 0, - Max_Select_Alternatives => 0, - Max_Task_Entries => 0, - others => 0)), - - GNAT_Extended_Ravenscar => - - -- Restrictions for GNAT_Extended_Ravenscar = - -- Restricted profile .. - - (Set => - (No_Abort_Statements => True, - No_Asynchronous_Control => True, - No_Dynamic_Attachment => True, - No_Dynamic_CPU_Assignment => True, - No_Dynamic_Priorities => True, - No_Local_Protected_Objects => True, - No_Protected_Type_Allocators => True, - No_Requeue_Statements => True, - No_Task_Allocators => True, - No_Task_Attributes_Package => True, - No_Task_Hierarchy => True, - No_Terminate_Alternatives => True, - Max_Asynchronous_Select_Nesting => True, - Max_Select_Alternatives => True, - Max_Task_Entries => True, - - -- plus these additional restrictions: - No_Implicit_Task_Allocations => True, No_Implicit_Protected_Object_Allocations => True, |