Does C.SW store the whole RV64 register?
No. Like sw, it stores only the low 32 bits of rs2'.
Store 32-bit word to memory. CS format.
C.SW uses CS format, with both rs1' and rs2' limited to x8-x15. It stores the low 32 bits of rs2' to the address formed by rs1' plus a zero-extended, 4-byte-scaled offset, and expands to sw rs2', offset(rs1').
Shows only RISC-V ISA-visible 16-bit encoding, operands, and state; it does not simulate a pipeline, cache, endianness implementation, or timing.
The EEI choice affects this result only when the effective address is not divisible by 4; a naturally aligned access must not raise an address-misaligned exception.
mem[0x0000000000002010] <- 0x12345678
C.SW maps its compressed register fields to x8-x15 and stores only the low 32 bits of rs2' at rs1' plus a 4-byte-scaled offset.
Understand this scenario with real code like «c.sw x8, 0(x10)».
No. Like sw, it stores only the low 32 bits of rs2'.