Is it available on RV32?
No. SRLIW, SRLW, and SUBW are RV64I word-operation forms.
Subtract lower 32 bits of rs2 from rs1, producing 32-bit result sign-extended to 64 bits
SUBW uses opcode 0111011 (0x3b), funct3 000, funct7 0100000. The rs1 and rs2 fields select the two source registers, and rd selects the destination register.
SUBW (R-type, opcode=0111011, funct7=0100000, funct3=000) subtracts the lower 32 bits of rs2 from rs1, ignores overflow, sign-extends the 32-bit result to 64 bits, and writes it to rd. Unlike SUB (full 64-bit operation), SUBW operates only on the lower 32 bits.
SUBW is an RV64I W-suffix integer instruction: it uses the low 32 bits of its inputs, produces a 32-bit result, then sign-extends bit 31 to 64 bits.
Understand this scenario with real code like «subw x10, x11, x12 # x10 = sign-extend((x11[31:0] - x12[31:0])[31:0])».
No. SRLIW, SRLW, and SUBW are RV64I word-operation forms.
The logical shift forms a 32-bit result first; the W-instruction rule then sign-extends bit 31 to 64 bits.