summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2015-11-18 10:20:28 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2015-11-18 10:20:28 +0000
commit891529cb34c47f8192b0ee9cf1f8d0ccbe8275de (patch)
tree9b774440b677583acdd554e6a31b348b4f914d28 /gcc
parent0924014e0d35d6100ad160950a996dccd6ca5c90 (diff)
downloadgcc-891529cb34c47f8192b0ee9cf1f8d0ccbe8275de.tar.gz
2015-11-18 Ed Falis <falis@adacore.com>
* s-soflin.adb, s-stchop-vxworks.adb: Code clean ups. 2015-11-18 Gary Dismukes <dismukes@adacore.com> * bcheck.adb: Minor editorial changes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230528 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog8
-rw-r--r--gcc/ada/bcheck.adb2
-rw-r--r--gcc/ada/s-soflin.adb6
-rw-r--r--gcc/ada/s-stchop-vxworks.adb11
4 files changed, 20 insertions, 7 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index d462f2f0e23..19cefb23845 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,11 @@
+2015-11-18 Ed Falis <falis@adacore.com>
+
+ * s-soflin.adb, s-stchop-vxworks.adb: Code clean ups.
+
+2015-11-18 Gary Dismukes <dismukes@adacore.com>
+
+ * bcheck.adb: Minor editorial changes.
+
2015-11-18 Arnaud Charlet <charlet@adacore.com>
* interfac.ads (Unsigned_24): New type.
diff --git a/gcc/ada/bcheck.adb b/gcc/ada/bcheck.adb
index 72a2cbd58a8..8f00ea299e8 100644
--- a/gcc/ada/bcheck.adb
+++ b/gcc/ada/bcheck.adb
@@ -453,7 +453,7 @@ package body Bcheck is
-- 2. The with'ed unit was compiled with dynamic elaboration checks
-- 3. The with'ed unit has pragma Preelaborate or Pure
-- 4. It is an internal GNAT unit (including children of GNAT)
- -- 5. It is an interface of a Stand-Aline Library
+ -- 5. It is an interface of a Stand-Alone Library
procedure Check_Consistent_Dynamic_Elaboration_Checking is
begin
diff --git a/gcc/ada/s-soflin.adb b/gcc/ada/s-soflin.adb
index b3efac83c47..9158a92dccb 100644
--- a/gcc/ada/s-soflin.adb
+++ b/gcc/ada/s-soflin.adb
@@ -49,6 +49,12 @@ package body System.Soft_Links is
NT_TSD : TSD;
-- Note: we rely on the default initialization of NT_TSD
+ -- Needed for Vx6Cert (Vx653mc) GOS cert and ravenscar-cert runtimes,
+ -- VxMILS cert, ravenscar-cert and full runtimes, Vx 5 default runtime
+ Stack_Limit : aliased System.Address;
+
+ pragma Export (C, Stack_Limit, "__gnat_stack_limit");
+
--------------------
-- Abort_Defer_NT --
--------------------
diff --git a/gcc/ada/s-stchop-vxworks.adb b/gcc/ada/s-stchop-vxworks.adb
index 24de94d91af..53f6c457c02 100644
--- a/gcc/ada/s-stchop-vxworks.adb
+++ b/gcc/ada/s-stchop-vxworks.adb
@@ -60,10 +60,9 @@ package body System.Stack_Checking.Operations is
-- VxWorks MILS includes the necessary routine in taskLib, so nothing
-- special needs to be done there.
- Stack_Limit : Address :=
- Boolean'Pos (Stack_Grows_Down) * Address'First
- + Boolean'Pos (not Stack_Grows_Down) * Address'Last;
- pragma Export (C, Stack_Limit, "__gnat_stack_limit");
+ Stack_Limit : Address;
+
+ pragma Import (C, Stack_Limit, "__gnat_stack_limit");
-- Stack_Limit contains the limit of the stack. This variable is later made
-- a task variable (by calling taskVarAdd) and then correctly set to the
@@ -91,7 +90,6 @@ package body System.Stack_Checking.Operations is
procedure Initialize_Stack_Limit is
begin
- -- For the environment task
Set_Stack_Limit_For_Current_Task;
@@ -126,6 +124,7 @@ package body System.Stack_Checking.Operations is
Limit : System.Address;
begin
+
-- Get stack bounds from VxWorks
Get_Stack_Info (Stack_Info'Access);
@@ -141,6 +140,6 @@ package body System.Stack_Checking.Operations is
end if;
Stack_Limit := Limit;
- end Set_Stack_Limit_For_Current_Task;
+ end Set_Stack_Limit_For_Current_Task;
end System.Stack_Checking.Operations;