Lines Matching refs:imm12_1
246 static inline u32 rv_b_insn(u16 imm12_1, u8 rs2, u8 rs1, u8 funct3, u8 opcode)
248 u8 imm12 = ((imm12_1 & 0x800) >> 5) | ((imm12_1 & 0x3f0) >> 4);
249 u8 imm4_1 = ((imm12_1 & 0xf) << 1) | ((imm12_1 & 0x400) >> 10);
453 static inline u32 rv_beq(u8 rs1, u8 rs2, u16 imm12_1)
455 return rv_b_insn(imm12_1, rs2, rs1, 0, 0x63);
458 static inline u32 rv_bne(u8 rs1, u8 rs2, u16 imm12_1)
460 return rv_b_insn(imm12_1, rs2, rs1, 1, 0x63);
463 static inline u32 rv_bltu(u8 rs1, u8 rs2, u16 imm12_1)
465 return rv_b_insn(imm12_1, rs2, rs1, 6, 0x63);
468 static inline u32 rv_bgtu(u8 rs1, u8 rs2, u16 imm12_1)
470 return rv_bltu(rs2, rs1, imm12_1);
473 static inline u32 rv_bgeu(u8 rs1, u8 rs2, u16 imm12_1)
475 return rv_b_insn(imm12_1, rs2, rs1, 7, 0x63);
478 static inline u32 rv_bleu(u8 rs1, u8 rs2, u16 imm12_1)
480 return rv_bgeu(rs2, rs1, imm12_1);
483 static inline u32 rv_blt(u8 rs1, u8 rs2, u16 imm12_1)
485 return rv_b_insn(imm12_1, rs2, rs1, 4, 0x63);
488 static inline u32 rv_bgt(u8 rs1, u8 rs2, u16 imm12_1)
490 return rv_blt(rs2, rs1, imm12_1);
493 static inline u32 rv_bge(u8 rs1, u8 rs2, u16 imm12_1)
495 return rv_b_insn(imm12_1, rs2, rs1, 5, 0x63);
498 static inline u32 rv_ble(u8 rs1, u8 rs2, u16 imm12_1)
500 return rv_bge(rs2, rs1, imm12_1);