From 7a44cb697f8804e97567650f37b216a876352a78 Mon Sep 17 00:00:00 2001 From: Pascal Obry Date: Tue, 27 Sep 2011 09:33:30 +0000 Subject: s-taprop.ads (Initialize_Lock): New spec for r/w lock. 2011-09-27 Pascal Obry * s-taprop.ads (Initialize_Lock)[RW_Lock]: New spec for r/w lock. (Finalize_Lock)[RW_Lock]: Likewise. (Write_Lock)[RW_Lock]: Likewise. (Unlock)[RW_Lock]: Likewise. (Read_Lock): Define L as RW_Lock (instead of Lock). * s-taprop-linux.adb (Initialize_Lock)[RW_Lock]: New routine for r/w lock. (Finalize_Lock)[RW_Lock]: Likewise. (Write_Lock)[RW_Lock]: Likewise. (Unlock)[RW_Lock]: Likewise. (Read_Lock): Define L as RW_Lock (instead of Lock). * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-dummy.adb, s-taprop-posix.adb (Initialize_Lock)[RW_Lock]: Same implementation as corresponding routine for standard lock. (Finalize_Lock)[RW_Lock]: Likewise. (Write_Lock)[RW_Lock]: Likewise. (Unlock)[RW_Lock]: Likewise. (Read_Lock): Define L as RW_Lock (instead of Lock). * s-taprob.ads, s-tpoben.ads (Protection): Add RWL (RW_Lock) in the record definition. * s-taprob.adb, s-taproben.adb (Finalize_Protection): Use r/w lock for 'R' locking policy. (Initialize_Protection): Likewise. (Lock): Likewise. (Lock_Read_Only): Likewise. (Unlock): Likewise. * s-taspri-posix.ads (RW_Lock): New type defined as OS_Interface.pthread_rwlock_t. * s-taspri-vxworks.ads, s-taspri-posix-noaltstack.ads, s-taspri-mingw.ads, s-taspri-solaris.ads, s-taspri-dummy.ads, s-taspri-posix.ads, s-taspri-vms.ads, s-taspri-hpux-dce.ads, s-taspri-tru64.ads (RW_Lock): New type defined as alias to Lock. From-SVN: r179251 --- gcc/ada/s-taprop-dummy.adb | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'gcc/ada/s-taprop-dummy.adb') diff --git a/gcc/ada/s-taprop-dummy.adb b/gcc/ada/s-taprop-dummy.adb index f6e9a64..f483066 100644 --- a/gcc/ada/s-taprop-dummy.adb +++ b/gcc/ada/s-taprop-dummy.adb @@ -158,6 +158,11 @@ package body System.Task_Primitives.Operations is null; end Finalize_Lock; + procedure Finalize_Lock (L : not null access RW_Lock) is + begin + null; + end Finalize_Lock; + procedure Finalize_Lock (L : not null access RTS_Lock) is begin null; @@ -218,6 +223,14 @@ package body System.Task_Primitives.Operations is end Initialize_Lock; procedure Initialize_Lock + (Prio : System.Any_Priority; + L : not null access RW_Lock) + is + begin + null; + end Initialize_Lock; + + procedure Initialize_Lock (L : not null access RTS_Lock; Level : Lock_Level) is begin null; @@ -264,7 +277,7 @@ package body System.Task_Primitives.Operations is --------------- procedure Read_Lock - (L : not null access Lock; + (L : not null access RW_Lock; Ceiling_Violation : out Boolean) is begin @@ -459,6 +472,11 @@ package body System.Task_Primitives.Operations is null; end Unlock; + procedure Unlock (L : not null access RW_Lock) is + begin + null; + end Unlock; + procedure Unlock (L : not null access RTS_Lock; Global_Lock : Boolean := False) @@ -502,6 +520,14 @@ package body System.Task_Primitives.Operations is end Write_Lock; procedure Write_Lock + (L : not null access RW_Lock; + Ceiling_Violation : out Boolean) + is + begin + Ceiling_Violation := False; + end Write_Lock; + + procedure Write_Lock (L : not null access RTS_Lock; Global_Lock : Boolean := False) is -- cgit v1.1