CSRRS

Control Status Register Read and Set

CSRRS rd, csr, rs1

Reads the value of the CSR into rd, then bitwise ORs the value in rs1 into the CSR (setting bits).

Details

CSRRS atomically reads CSR csr into rd, then sets the bits in the CSR that correspond to bits set in rs1. If rs1 is x0, no bits are modified.

Pseudocode Operation

t = CSRs[csr]; CSRs[csr] = t | R[rs1]; R[rd] = t;

Example

CSRRS x0, sstatus, x5

Encoding

Binary Layout
csr
31:20
rs1
19:15
010
14:12
rd
11:7
1110011
6:0
 
Format I-Type
Opcode 0x73
Extension Zicsr

Operands

  • rd
    Destination register (integer)
  • csr
    CSR Address
  • rs1
    Bit Mask