From 615563906a729bb01a9c138229af55fd40b5d4b5 Mon Sep 17 00:00:00 2001 From: Glenn Humphrey Date: Tue, 27 Nov 2007 21:22:44 +0000 Subject: 2007-11-27 Glenn Humphrey * rtems.adb, rtems.ads: Fixed errors in the barrier binding. --- c/src/ada/ChangeLog | 4 ++++ c/src/ada/rtems.adb | 16 +++++++++------- c/src/ada/rtems.ads | 7 ++++--- 3 files changed, 17 insertions(+), 10 deletions(-) (limited to 'c/src/ada') diff --git a/c/src/ada/ChangeLog b/c/src/ada/ChangeLog index 8e10fc740b..20c4d8ba16 100644 --- a/c/src/ada/ChangeLog +++ b/c/src/ada/ChangeLog @@ -1,3 +1,7 @@ +2007-11-27 Glenn Humphrey + + * rtems.adb, rtems.ads: Fixed errors in the barrier binding. + 2007-10-25 Glenn Humphrey * rtems.adb, rtems.ads: Added some more missing bindings. diff --git a/c/src/ada/rtems.adb b/c/src/ada/rtems.adb index a8a4a27682..35bc92711e 100644 --- a/c/src/ada/rtems.adb +++ b/c/src/ada/rtems.adb @@ -1910,33 +1910,35 @@ package body RTEMS is procedure Barrier_Wait ( ID : in RTEMS.ID; - Option_Set : in RTEMS.Option; Timeout : in RTEMS.Interval; Result : out RTEMS.Status_Codes ) is function Barrier_Wait_Base ( ID : RTEMS.ID; - Option_Set : RTEMS.Option; Timeout : RTEMS.Interval ) return RTEMS.Status_Codes; pragma Import (C, Barrier_Wait_Base, "rtems_barrier_wait"); begin - Result := Barrier_Wait_Base ( ID, Option_Set, Timeout ); + Result := Barrier_Wait_Base ( ID, Timeout ); end Barrier_Wait; procedure Barrier_Release ( - ID : in RTEMS.ID; - Result : out RTEMS.Status_Codes + ID : in RTEMS.ID; + Released : out RTEMS.Unsigned32; + Result : out RTEMS.Status_Codes ) is function Barrier_Release_Base ( - ID : RTEMS.ID + ID : RTEMS.ID + Released : access RTEMS.Unsigned32 ) return RTEMS.Status_Codes; pragma Import (C, Barrier_Release_Base, "rtems_barrier_release"); + Released_Base : aliased RTEMS.Unsigned32; begin - Result := Barrier_Release_Base ( ID ); + Result := Barrier_Release_Base ( ID, Released_Base'Unchecked_Access ); + Released := Released_Base; end Barrier_Release; diff --git a/c/src/ada/rtems.ads b/c/src/ada/rtems.ads index 52ef71456d..4d67f72d15 100644 --- a/c/src/ada/rtems.ads +++ b/c/src/ada/rtems.ads @@ -354,6 +354,7 @@ pragma Elaborate_Body (RTEMS); type Rate_Monotonic_Period_Status is record + Owner : RTEMS.ID; State : RTEMS.Rate_Monotonic_Period_States; Ticks_Since_Last_Period : RTEMS.Unsigned32; Ticks_Executed_Since_Last_Period : RTEMS.Unsigned32; @@ -1213,14 +1214,14 @@ pragma Elaborate_Body (RTEMS); procedure Barrier_Wait ( ID : in RTEMS.ID; - Option_Set : in RTEMS.Option; Timeout : in RTEMS.Interval; Result : out RTEMS.Status_Codes ); procedure Barrier_Release ( - ID : in RTEMS.ID; - Result : out RTEMS.Status_Codes + ID : in RTEMS.ID; + Released : out RTEMS.Unsigned32; + Result : out RTEMS.Status_Codes ); -- -- cgit v1.2.3