stdu
Store Doubleword with Update DS-form
stdu RS,disp(RA)
Stores a doubleword from a register to memory and updates the base address register.
Details
The stdu instruction stores the contents of register RS into the doubleword in storage addressed by EA, which is the sum of (RA) + EXTS(DS || 0b00). The effective address EA is then placed back into register RA. If RA=0, the instruction form is invalid.
Pseudocode Operation
EA ← (RA) + EXTS(DS || 0b00)
MEM(EA, 8) ← (RS)
RA ← EA
Programming Note
The base register (RA) is updated with the effective address after the memory access. RA must not be 0 and must differ from the destination register; violating this constraint produces undefined results.
Example
stdu r3, disp(RA)
Encoding
Binary Layout
0
0
RS
6
RA
11
DS
16
1
31
Operands
-
RS
Source General Purpose Register -
RA
Base Address General Purpose Register -
disp
Displacement value