Use LP_OP(mov) and RDI_LP on pointer

This commit is contained in:
H.J. Lu 2012-05-15 10:19:11 -07:00
parent 890d8bd854
commit 289ac4352a
2 changed files with 8 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/cancellation.S: Use LP_OP(mov)
to update pointer in memory. Load pointer into RDI_LP.
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h

View File

@ -72,10 +72,10 @@ ENTRY(__pthread_enable_asynccancel)
3: subq $8, %rsp
cfi_adjust_cfa_offset(8)
movq $TCB_PTHREAD_CANCELED, %fs:RESULT
LP_OP(mov) $TCB_PTHREAD_CANCELED, %fs:RESULT
lock
orl $TCB_EXITING_BITMASK, %fs:CANCELHANDLING
movq %fs:CLEANUP_JMP_BUF, %rdi
mov %fs:CLEANUP_JMP_BUF, %RDI_LP
#ifdef SHARED
call __pthread_unwind@PLT
#else
@ -106,7 +106,7 @@ ENTRY(__pthread_disable_asynccancel)
/* Performance doesn't matter in this loop. We will
delay until the thread is canceled. And we will unlikely
enter the loop twice. */
4: movq %fs:0, %rdi
4: mov %fs:0, %RDI_LP
movl $__NR_futex, %eax
xorq %r10, %r10
addq $CANCELHANDLING, %rdi