-require_rvc;
-if(xpr64)
- CRDS = sreg_t(CRDS) >> CIMM5U;
-else
- CRDS = sext32(int32_t(CRDS) >> CIMM5U);
+require_extension('C');
+require(insn.rvc_zimm() < xlen && insn.rvc_zimm() > 0);
+WRITE_RVC_RS1S(sext_xlen(sext_xlen(RVC_RS1S) >> insn.rvc_zimm()));