Atomic swap : Set t1 to the word at the address in t3, and store t2 there. The exchange is indivisible, which makes this the natural way to implement a spinlock
amoswap.w
Operands
reg, reg, (reg)Variants
- Atomic swap : Set t1 to the word at the address in t3, and store t2 there. The exchange is indivisible, which makes this the natural way to implement a spinlock amoswap.w t1, t2, (t3)
# value is initialized and naturally aligned for this operation.
.data
value: .word 0x12345678
.text
la t0, value
# Atomic operation returns the old value 305419896 in t2, then changes value to 5.
li t1, 5
amoswap.w t2, t1, (t0)