Use LP_OP(op), LP_SIZE and ASM_ADDR in sem_wait.S

This commit is contained in:
H.J. Lu 2012-05-15 12:48:26 -07:00
parent 9dba3b5c0a
commit dde05f0093
2 changed files with 13 additions and 6 deletions

View File

@ -1,3 +1,10 @@
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Use LP_OP(op)
on NWAITERS.
(__gcc_personality_v0): Replace 8-byte data alignment with
LP_SIZE alignment and .quad with ASM_ADDR.
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Use LP_OP(op)

View File

@ -66,7 +66,7 @@ sem_wait:
cfi_adjust_cfa_offset(8)
LOCK
addq $1, NWAITERS(%rdi)
LP_OP(add) $1, NWAITERS(%rdi)
.LcleanupSTART:
6: call __pthread_enable_asynccancel
@ -115,7 +115,7 @@ sem_wait:
xorl %eax, %eax
9: LOCK
subq $1, NWAITERS(%rdi)
LP_OP(sub) $1, NWAITERS(%rdi)
leaq 8(%rsp), %rsp
cfi_adjust_cfa_offset(-8)
@ -136,7 +136,7 @@ sem_wait:
sem_wait_cleanup:
movq (%rsp), %rdi
LOCK
subq $1, NWAITERS(%rdi)
LP_OP(sub) $1, NWAITERS(%rdi)
movq %rax, %rdi
.LcallUR:
call _Unwind_Resume@PLT
@ -168,9 +168,9 @@ sem_wait_cleanup:
.hidden DW.ref.__gcc_personality_v0
.weak DW.ref.__gcc_personality_v0
.section .gnu.linkonce.d.DW.ref.__gcc_personality_v0,"aw",@progbits
.align 8
.align LP_SIZE
.type DW.ref.__gcc_personality_v0, @object
.size DW.ref.__gcc_personality_v0, 8
.size DW.ref.__gcc_personality_v0, LP_SIZE
DW.ref.__gcc_personality_v0:
.quad __gcc_personality_v0
ASM_ADDR __gcc_personality_v0
#endif