summaryrefslogtreecommitdiff
path: root/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S
diff options
context:
space:
mode:
Diffstat (limited to 'nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S18
1 files changed, 15 insertions, 3 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S b/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S
index 320a3e8f05..71a8e57506 100644
--- a/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S
+++ b/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 2003-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -29,9 +29,14 @@
.globl __pthread_cond_signal
.type __pthread_cond_signal, @function
.align 5
+ cfi_startproc
__pthread_cond_signal:
mov.l r8, @-r15
+ cfi_adjust_cfa_offset (4)
+ cfi_rel_offset (r8, 0)
sts.l pr, @-r15
+ cfi_adjust_cfa_offset (4)
+ cfi_rel_offset (pr, 0)
mov r4, r8
/* Get internal lock. */
@@ -109,10 +114,16 @@ __pthread_cond_signal:
bt 7f
6:
- mov #0, r0
+ cfi_remember_state
lds.l @r15+, pr
+ cfi_adjust_cfa_offset (-4)
+ cfi_restore (pr)
+ mov.l @r15+, r8
+ cfi_adjust_cfa_offset (-4)
+ cfi_restore (r8)
rts
- mov.l @r15+, r8
+ mov #0, r0
+ cfi_restore_state
#ifndef __ASSUME_PRIVATE_FUTEX
.Lpfoff:
@@ -178,6 +189,7 @@ __pthread_cond_signal:
.Lwait4b:
bra 2b
nop
+ cfi_endproc
.align 2
.Lwait4: