diff options
author | Ulrich Drepper <drepper@redhat.com> | 2004-10-29 21:10:51 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2004-10-29 21:10:51 +0000 |
commit | 980c14c526348b7b24ca74c6a94a396d5f0ab942 (patch) | |
tree | f1b2331ca930dca39d889fe4da35ec9127d2d71a /nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S | |
parent | bcbfaf1def57a02b15709e476bd069bdf4ba2619 (diff) | |
download | glibc-980c14c526348b7b24ca74c6a94a396d5f0ab942.tar.gz glibc-980c14c526348b7b24ca74c6a94a396d5f0ab942.tar.xz glibc-980c14c526348b7b24ca74c6a94a396d5f0ab942.zip |
(sem_timedwait): Set ETIMEDOUT to errno when time is up. Tweak to avoid assembler warning.
Diffstat (limited to 'nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S')
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S b/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S index 27a1bb019d..acb7d0f78b 100644 --- a/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S @@ -42,8 +42,10 @@ sem_timedwait: mov #0xf9, r1 and r1, r0 cmp/eq #8, r0 - bt 10f - + bf 0f + bra 10f + stc gbr, r0 +0: mov.l @r4, r0 2: tst r0, r0 @@ -115,7 +117,8 @@ sem_timedwait: add #-1, r2 5: cmp/pz r2 - bf 6f /* Time is already up. */ + bf/s 6f /* Time is already up. */ + mov #ETIMEDOUT, r0 /* Store relative timeout. */ mov.l r2, @r15 @@ -196,7 +199,6 @@ sem_timedwait: 10: /* Canceled. */ - stc gbr, r0 mov.w .Lresult, r1 mov #-1, r2 mov.l r2, @(r0,r1) |