aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2008-04-08 09:13:49 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2008-04-08 09:13:49 +0200
commiteb0a45986f505b3d55aa74a30d24c2341f47fcf3 (patch)
tree869ca500893bc6c068cedb4e1671a265df34d337 /gcc
parent9874e252439e6e9ba21829d257201fa02a87259e (diff)
downloadgcc-eb0a45986f505b3d55aa74a30d24c2341f47fcf3.zip
gcc-eb0a45986f505b3d55aa74a30d24c2341f47fcf3.tar.gz
gcc-eb0a45986f505b3d55aa74a30d24c2341f47fcf3.tar.bz2
(Task_Address): New subtype of System.Address
(Task_Address): New subtype of System.Address (Task_Address_Size): New constant size of System.Address (Alternate_Stack_Size): New constant. From-SVN: r134079
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/s-taspri-posix.ads12
-rw-r--r--gcc/ada/s-taspri-vms.ads12
2 files changed, 24 insertions, 0 deletions
diff --git a/gcc/ada/s-taspri-posix.ads b/gcc/ada/s-taspri-posix.ads
index c59a780..23723f8 100644
--- a/gcc/ada/s-taspri-posix.ads
+++ b/gcc/ada/s-taspri-posix.ads
@@ -65,6 +65,18 @@ package System.Task_Primitives is
-- A component of this type is guaranteed to be included in the
-- Ada_Task_Control_Block.
+ subtype Task_Address is System.Address;
+ -- In some versions of Task_Primitives, notably for VMS, Task_Address is
+ -- the short version of address defined in System.Aux_DEC. To avoid
+ -- dragging Aux_DEC into tasking packages a tasking specific subtype is
+ -- defined here.
+
+ Task_Address_Size : constant := Standard'Address_Size;
+ -- The size of Task_Address
+
+ Alternate_Stack_Size : constant := System.OS_Interface.Alternate_Stack_Size;
+ -- Import value from System.OS_Interface
+
private
type Lock is new System.OS_Interface.pthread_mutex_t;
diff --git a/gcc/ada/s-taspri-vms.ads b/gcc/ada/s-taspri-vms.ads
index d2e78cb..8f5cb28 100644
--- a/gcc/ada/s-taspri-vms.ads
+++ b/gcc/ada/s-taspri-vms.ads
@@ -42,6 +42,7 @@ pragma Polling (Off);
with Interfaces.C;
with System.OS_Interface;
+with System.Aux_DEC;
package System.Task_Primitives is
pragma Preelaborate;
@@ -66,6 +67,17 @@ package System.Task_Primitives is
-- A component of this type is guaranteed to be included in the
-- Ada_Task_Control_Block.
+ subtype Task_Address is System.Aux_DEC.Short_Address;
+ -- Task_Address is the short version of address defined in System.Aux_DEC.
+ -- To avoid dragging Aux_DEC into tasking packages a tasking specific
+ -- subtype is defined here.
+
+ Task_Address_Size : constant := System.Aux_DEC.Short_Address_Size;
+ -- The size of Task_Address
+
+ Alternate_Stack_Size : constant := 0;
+ -- No alternate signal stack is used on this platform
+
private
type Exc_Stack_T is array (0 .. 8192) of aliased Character;