Lines Matching full:emit
105 /* Emit a 4-byte riscv instruction. */
106 static inline void emit(const u32 insn, struct rv_jit_context *ctx) in emit() function
116 /* Emit a 2-byte riscv compressed instruction. */
737 * ensure that the RV32 JIT doesn't emit any of these instructions.
910 /* Helper functions that emit RVC instructions when possible. */
919 emit(rv_jalr(rd, rs, imm), ctx); in emit_jalr()
927 emit(rv_addi(rd, rs, 0), ctx); in emit_mv()
935 emit(rv_add(rd, rs1, rs2), ctx); in emit_add()
948 emit(rv_addi(rd, rs, imm), ctx); in emit_addi()
956 emit(rv_addi(rd, RV_REG_ZERO, imm), ctx); in emit_li()
964 emit(rv_lui(rd, imm), ctx); in emit_lui()
972 emit(rv_slli(rd, rs, imm), ctx); in emit_slli()
980 emit(rv_andi(rd, rs, imm), ctx); in emit_andi()
988 emit(rv_srli(rd, rs, imm), ctx); in emit_srli()
996 emit(rv_srai(rd, rs, imm), ctx); in emit_srai()
1004 emit(rv_sub(rd, rs1, rs2), ctx); in emit_sub()
1012 emit(rv_or(rd, rs1, rs2), ctx); in emit_or()
1020 emit(rv_and(rd, rs1, rs2), ctx); in emit_and()
1028 emit(rv_xor(rd, rs1, rs2), ctx); in emit_xor()
1038 emit(rv_lw(rd, off, rs1), ctx); in emit_lw()
1048 emit(rv_sw(rs1, off, rs2), ctx); in emit_sw()
1059 emit(rv_addiw(rd, rs, imm), ctx); in emit_addiw()
1069 emit(rv_ld(rd, off, rs1), ctx); in emit_ld()
1079 emit(rv_sd(rs1, off, rs2), ctx); in emit_sd()
1087 emit(rv_subw(rd, rs1, rs2), ctx); in emit_subw()