diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2009-11-30 11:45:39 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2009-11-30 11:45:39 +0100 |
commit | 196b199369f3e1f24c391891fcf9ab90de2a2739 (patch) | |
tree | 3b261d5a5445f547021de9cc6066149576f1ce31 /gcc/ada/s-taprop-vms.adb | |
parent | ffab1d071ca78b02490bb39ae784d1ad45f4eb04 (diff) | |
download | gcc-196b199369f3e1f24c391891fcf9ab90de2a2739.zip gcc-196b199369f3e1f24c391891fcf9ab90de2a2739.tar.gz gcc-196b199369f3e1f24c391891fcf9ab90de2a2739.tar.bz2 |
[multiple changes]
2009-11-30 Robert Dewar <dewar@adacore.com>
* osint.ads, prj.adb, prj.ads: Minor reformatting
* s-stchop.adb, s-taprop-vxworks.adb, s-taprop-tru64.adb,
s-taprop-vms.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
s-strxdr.adb, s-taprop-irix.adb,
s-osinte-hpux-dce.adb, s-osinte-tru64.adb, s-taenca.adb,
s-taprop-hpux-dce.adb, s-stausa.adb, s-taprop-posix.adb: Minor code
reorganization (use conditional expressions).
2009-11-30 Bob Duff <duff@adacore.com>
* g-sttsne-locking.adb (Copy_Service_Entry): Complete previous change.
From-SVN: r154779
Diffstat (limited to 'gcc/ada/s-taprop-vms.adb')
-rw-r--r-- | gcc/ada/s-taprop-vms.adb | 35 |
1 files changed, 13 insertions, 22 deletions
diff --git a/gcc/ada/s-taprop-vms.adb b/gcc/ada/s-taprop-vms.adb index eb8c0f1..582f88b 100644 --- a/gcc/ada/s-taprop-vms.adb +++ b/gcc/ada/s-taprop-vms.adb @@ -408,15 +408,12 @@ package body System.Task_Primitives.Operations is Result : Interfaces.C.int; begin - if Single_Lock then - Result := - pthread_cond_wait - (Self_ID.Common.LL.CV'Access, Single_RTS_Lock'Access); - else - Result := - pthread_cond_wait - (Self_ID.Common.LL.CV'Access, Self_ID.Common.LL.L'Access); - end if; + Result := + pthread_cond_wait + (cond => Self_ID.Common.LL.CV'Access, + mutex => (if Single_Lock + then Single_RTS_Lock'Access + else Self_ID.Common.LL.L'Access)); -- EINTR is not considered a failure @@ -540,19 +537,13 @@ package body System.Task_Primitives.Operations is exit; end if; - if Single_Lock then - Result := - pthread_cond_wait - (Self_ID.Common.LL.CV'Access, - Single_RTS_Lock'Access); - pragma Assert (Result = 0); - else - Result := - pthread_cond_wait - (Self_ID.Common.LL.CV'Access, - Self_ID.Common.LL.L'Access); - pragma Assert (Result = 0); - end if; + Result := + pthread_cond_wait + (cond => Self_ID.Common.LL.CV'Access, + mutex => (if Single_Lock + then Single_RTS_Lock'Access + else Self_ID.Common.LL.L'Access)); + pragma Assert (Result = 0); Yielded := True; |