summaryrefslogtreecommitdiff
path: root/gcc/ada/s-osinte-tru64.ads
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-osinte-tru64.ads
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-osinte-tru64.ads')
-rw-r--r--gcc/ada/s-osinte-tru64.ads22
1 files changed, 12 insertions, 10 deletions
diff --git a/gcc/ada/s-osinte-tru64.ads b/gcc/ada/s-osinte-tru64.ads
index 5fe84b2e733..aa3eb057b43 100644
--- a/gcc/ada/s-osinte-tru64.ads
+++ b/gcc/ada/s-osinte-tru64.ads
@@ -7,7 +7,7 @@
-- S p e c --
-- --
-- Copyright (C) 1991-1994, Florida State University --
--- Copyright (C) 1995-2007, Free Software Foundation, Inc. --
+-- Copyright (C) 1995-2007, 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- --
@@ -273,18 +273,17 @@ package System.OS_Interface is
-----------
Stack_Base_Available : constant Boolean := False;
- -- Indicates wether the stack base is available on this target.
+ -- Indicates if the stack base is available on this target
function Get_Stack_Base (thread : pthread_t) return Address;
pragma Inline (Get_Stack_Base);
- -- returns the stack base of the specified thread.
- -- Only call this function when Stack_Base_Available is True.
+ -- Returns the stack base of the specified thread. Only call this function
+ -- when Stack_Base_Available is True.
function Get_Page_Size return size_t;
function Get_Page_Size return Address;
pragma Import (C, Get_Page_Size, "getpagesize");
- -- returns the size of a page, or 0 if this is not relevant on this
- -- target
+ -- Returns the size of a page, or 0 if this is not relevant on this target
PROT_NONE : constant := 0;
PROT_READ : constant := 1;
@@ -298,11 +297,14 @@ package System.OS_Interface is
function mprotect (addr : Address; len : size_t; prot : int) return int;
pragma Import (C, mprotect);
- procedure Hide_Yellow_Zone;
+ procedure Hide_Unhide_Yellow_Zone (Hide : Boolean);
-- Every thread except the initial one features an overflow warning area
- -- just above the overflow guard area on the stack. They are called
- -- the Yellow Zone and the Red Zone respectively. This procedure hides
- -- the former so that the latter could be exposed to stack probing.
+ -- (called the Yellow Zone) which is just above the overflow guard area
+ -- on the stack (called the Red Zone). During task execution, we want
+ -- signals from the Red Zone, so we need to hide the Yellow Zone. This
+ -- procedure is called at the start of task execution (with Hide set True)
+ -- to hide the Yellow Zone, and at the end of task execution (with Hide
+ -- set False) to unhide the Yellow Zone.
---------------------------------------
-- Nonstandard Thread Initialization --