1 <!-- This defines DRAFT instructions described in SV -->
3 <!-- This defines instructions that store from a register to RAM -->
4 <!-- Effective Address is always RA, and the usual EA is stored late in RA -->
6 # Store Byte with Update
16 MEM(ea, 1) <- (RS)[XLEN-8:XLEN-1]
21 Let the effective address (EA) be the sum (RA)+ D.
22 (RS)[56:63] are stored into the byte in storage addressed
25 EA is placed into register RA.
27 If RA=0, the instruction form is invalid.
29 Special Registers Altered:
33 # Store Byte with Update Indexed
43 MEM(ea, 1) <- (RS)[XLEN-8:XLEN-1]
46 Special Registers Altered:
50 # Store Halfword with Update
60 MEM(ea, 2) <- (RS)[XLEN-16:XLEN-1]
63 Special Registers Altered:
67 # Store Halfword with Update Indexed
77 MEM(ea, 2) <- (RS)[XLEN-16:XLEN-1]
80 Special Registers Altered:
84 # Store Word with Update
94 MEM(ea, 4) <- (RS)[XLEN-32:XLEN-1]
97 Special Registers Altered:
101 # Store Word with Update Indexed
111 MEM(ea, 4) <- (RS)[XLEN-32:XLEN-1]
114 Special Registers Altered:
118 # Store Doubleword with Update
126 EA <- (RA) + EXTS(DS || 0b00)
131 Special Registers Altered:
135 # Store Doubleword with Update Indexed
148 Special Registers Altered: