What does shamt=0 do?
It is a HINT designated for custom use; architectural state is unchanged except PC advance and applicable performance counters.
Logical right shift of rd'. CB format.
Extension condition: RV32/RV64; requires C or Zca.
C.SRLI uses CB format to shift rd' in x8-x15 right logically, filling high bits with zeros and writing the same register. Regular forms expand to srli rd', rd', shamt: 1-31 on RV32 or 1-63 on RV64. Zero is a HINT; RV32 shamt[5]=1 is designated for custom extensions.
Shows only official 16-bit fields, conditions, and architectural state; it does not model a pipeline, cache, or timing.
RV32/RV64; requires C or Zca; overlapping operands read the same old value.
C.SRLI logically shifts rd' in x8-x15 right by shamt and writes the same register; shamt=0 is a HINT.
RV32 C/Zca, x8=0x80000010: c.srli x8, 2 yields x8=0x20000004, filling high bits with zero.
It is a HINT designated for custom use; architectural state is unchanged except PC advance and applicable performance counters.
RV32 shamt[5]=1 is designated for custom extensions; RV64 regular shifts can use 1-63.