Lines Matching refs:rdi
248 // It assumes: old -> %rdi (ie, it follows the ABI parameter conventions)
274 // It assumes: old -> %rdi (ie, it follows the ABI parameter conventions)
282 movq %rdi,%rax // put old value where "cmpxchg" wants it
291 movq %rdi,%rax // put old value where "cmpxchg" wants it
300 // n = %rdi
322 // n = %rdi
344 // amt = %rdi
367 // amt = %rdi
369 // Returns: old value in %rdi
370 // NB: OSAtomicAdd64 returns the new value, so clients will add amt to %rdi
375 xaddq %rdi, (%rsi)
382 xaddq %rdi, (%rsi)
398 LAtomicEnqueue_64: // %rdi == list head, %rsi == new, %rdx == offset
402 movq (%rdi),%rax // %rax == ptr to 1st element in Q
403 movq 8(%rdi),%rdx // %rdx == current generation count
409 cmpxchg16b (%rdi) // ...push on new element
420 LAtomicDequeue_64: // %rdi == list head, %rsi == offset
422 movq (%rdi),%rax // %rax == ptr to 1st element in Q
423 movq 8(%rdi),%rdx // %rdx == current generation count
431 cmpxchg16b (%rdi) // ...pop off 1st element