diff --git a/llvm/lib/Target/RISCV/RISCVInstrInfoZb.td b/llvm/lib/Target/RISCV/RISCVInstrInfoZb.td index 12ce6ce738207..3a0b5a5b694c6 100644 --- a/llvm/lib/Target/RISCV/RISCVInstrInfoZb.td +++ b/llvm/lib/Target/RISCV/RISCVInstrInfoZb.td @@ -838,13 +838,15 @@ def : PatGprGpr; def : PatGprGpr; def : PatGprGpr; def : PatGprGpr; -def : PatGprGpr; def : PatGprImm; def : PatGprImm; def : PatGprImm; def : PatGprImm; } // Predicates = [HasStdExtZbp] +let Predicates = [HasStdExtZbp, IsRV64] in +def : PatGprGpr; + let Predicates = [HasStdExtZbp, IsRV32] in { def : Pat<(i32 (rotr (riscv_grev GPR:$rs1, 24), (i32 16))), (GREVI GPR:$rs1, 8)>; def : Pat<(i32 (rotl (riscv_grev GPR:$rs1, 24), (i32 16))), (GREVI GPR:$rs1, 8)>;