summaryrefslogtreecommitdiff
path: root/nptl/sysdeps/unix/sysv/linux/sh/sem_post.S
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-08-03 15:50:30 +0000
committerUlrich Drepper <drepper@redhat.com>2007-08-03 15:50:30 +0000
commitce31a3b1c588f8b8a5c7702c6460d6bd4386bd95 (patch)
tree3b8f897b1e40b26d31f18e8095cfd9102612de71 /nptl/sysdeps/unix/sysv/linux/sh/sem_post.S
parent96c502084aeb396c8794723b32bdcad58a634695 (diff)
* intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
failed. * intl/finddomain.c (_nl_find_domain): Free normalized_codeset on failure. * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be allocated. 2007-08-03 Jakub Jelinek <jakub@redhat.com>
Diffstat (limited to 'nptl/sysdeps/unix/sysv/linux/sh/sem_post.S')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sh/sem_post.S18
1 files changed, 8 insertions, 10 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/sh/sem_post.S b/nptl/sysdeps/unix/sysv/linux/sh/sem_post.S
index a63233feab..a3a7710ef9 100644
--- a/nptl/sysdeps/unix/sysv/linux/sh/sem_post.S
+++ b/nptl/sysdeps/unix/sysv/linux/sh/sem_post.S
@@ -20,14 +20,10 @@
#include <shlib-compat.h>
#include <pthread-errnos.h>
#include <structsem.h>
+#include <lowlevellock.h>
#include "lowlevel-atomic.h"
-#define SYS_gettimeofday __NR_gettimeofday
-#define SYS_futex 240
-#define FUTEX_WAIT 0
-#define FUTEX_WAKE 1
-
.text
.globl __new_sem_post
@@ -65,7 +61,12 @@ __new_sem_post:
mov.l .Lerrno3, r0
stc gbr, r1
mov.l @(r0, r12), r0
- add r1, r0
+ bra .Lexit
+ add r1, r0
+ .align 2
+.Lerrno3:
+ .long errno@GOTTPOFF
+.Lexit:
#else
mov.l .Lerrloc3, r1
bsrf r1
@@ -81,10 +82,7 @@ __new_sem_post:
.align 2
.Lgot3:
.long _GLOBAL_OFFSET_TABLE_
-#if USE___THREAD
-.Lerrno3:
- .long errno@GOTTPOFF
-#else
+#if !USE___THREAD
.Lerrloc3:
.long __errno_location@PLT-(.Lerrloc3b-.)
#endif