Atomic add : Set t1 to the double word at the address in t3, and store that value plus t2 there. Useful for a shared counter that several agents increment (64bit)
amoadd.d
Operands
reg, reg, (reg)Variants
- Atomic add : Set t1 to the double word at the address in t3, and store that value plus t2 there. Useful for a shared counter that several agents increment (64bit) amoadd.d t1, t2, (t3)
This example runs on RV64.
# value is initialized and naturally aligned for this operation.
.data
value: .dword 0x0000000012345678
.text
la t0, value
# Atomic operation returns the old value 305419896 in t2, then changes value to 305419901.
li t1, 5
amoadd.d t2, t1, (t0)