summaryrefslogtreecommitdiff
path: root/gcc/ada/s-taprop-tru64.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2007-10-15 13:53:30 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2007-10-15 13:53:30 +0000
commit0d5864d449195511725a88a264cf43006c3a342e (patch)
treef11d96eced9b624d50bcbf22e4859d2f37704a62 /gcc/ada/s-taprop-tru64.adb
parentf9f3b518fb8494e8c911b7659d02e83e3c645f15 (diff)
downloadgcc-0d5864d449195511725a88a264cf43006c3a342e.tar.gz
2007-10-15 Eric Botcazou <ebotcazou@adacore.com>
* s-osinte-tru64.adb: (Hide_Yellow_Zone): Add On parameter. Set the protection status of the guard page based on the value of On. * s-osinte-tru64.ads: (Hide_Yellow_Zone): Add On parameter. * s-taprop-tru64.adb: (Enter_Task): Pass True to Hide_Yellow_Zone. (Exit_Task): Pass False to Hide_Yellow_Zone. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129317 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/s-taprop-tru64.adb')
-rw-r--r--gcc/ada/s-taprop-tru64.adb11
1 files changed, 7 insertions, 4 deletions
diff --git a/gcc/ada/s-taprop-tru64.adb b/gcc/ada/s-taprop-tru64.adb
index 975bae11f4f..35acb26ce58 100644
--- a/gcc/ada/s-taprop-tru64.adb
+++ b/gcc/ada/s-taprop-tru64.adb
@@ -173,9 +173,11 @@ package body System.Task_Primitives.Operations is
pragma Unreferenced (Sig);
T : constant Task_Id := Self;
- Result : Interfaces.C.int;
Old_Set : aliased sigset_t;
+ Result : Interfaces.C.int;
+ pragma Warnings (Off, Result);
+
begin
-- It is not safe to raise an exception when using ZCX and the GCC
-- exception handling mechanism.
@@ -720,7 +722,7 @@ package body System.Task_Primitives.Operations is
procedure Enter_Task (Self_ID : Task_Id) is
begin
- Hide_Yellow_Zone;
+ Hide_Unhide_Yellow_Zone (Hide => True);
Self_ID.Common.LL.Thread := pthread_self;
Specific.Set (Self_ID);
@@ -843,8 +845,8 @@ package body System.Task_Primitives.Operations is
use System.Task_Info;
begin
- -- Account for the Yellow Zone (2 pages) and the guard page
- -- right above. See Hide_Yellow_Zone for the rationale.
+ -- Account for the Yellow Zone (2 pages) and the guard page right above.
+ -- See Hide_Unhide_Yellow_Zone for the rationale.
Adjusted_Stack_Size :=
Interfaces.C.size_t (Stack_Size) + 3 * Get_Page_Size;
@@ -1006,6 +1008,7 @@ package body System.Task_Primitives.Operations is
procedure Exit_Task is
begin
Specific.Set (null);
+ Hide_Unhide_Yellow_Zone (Hide => False);
end Exit_Task;
----------------