c.srli

Shift right logical immediate

Shift the value in xd right by shamt, and store the result back in xd. The xd register index should be used as xd+8 (registers x8-x15). C.SRLI expands into srli xd, xd, shamt.

This instruction must have data-independent timing when extension Zkt is enabled.

Assembly format

c.srli xd, shamt

Decode Variables

  • RV32

  • RV64

Bits<5> shamt = $encoding[6:2];
Bits<3> xd = $encoding[9:7];
Bits<6> shamt = {$encoding[12], $encoding[6:2]};
Bits<3> xd = $encoding[9:7];

Execution

X[creg2reg(xd)] = X[creg2reg(xd)] >> shamt;

Encoding

This instruction has different encodings in RV32 and RV64.
RV32
svg
RV64
svg

Defining extension

Zca

Access

M

Always

Containing profiles

  • Mandatory: None

  • Optional: RVA20S64, RVA20U64, RVA22S64, RVA22U64, RVA23S64, RVA23U64, RVB23S64, RVB23U64, RVI20U32, RVI20U64