Lines Matching refs:rd
85 static inline void move_addr(struct jit_ctx *ctx, enum loongarch_gpr rd, u64 addr) in move_addr() argument
91 emit_insn(ctx, lu12iw, rd, imm_31_12); in move_addr()
95 emit_insn(ctx, ori, rd, rd, imm_11_0); in move_addr()
99 emit_insn(ctx, lu32id, rd, imm_51_32); in move_addr()
103 emit_insn(ctx, lu52id, rd, rd, imm_63_52); in move_addr()
106 static inline void move_imm(struct jit_ctx *ctx, enum loongarch_gpr rd, long imm, bool is32) in move_imm() argument
112 emit_insn(ctx, or, rd, LOONGARCH_GPR_ZERO, LOONGARCH_GPR_ZERO); in move_imm()
118 emit_insn(ctx, addiw, rd, LOONGARCH_GPR_ZERO, imm); in move_imm()
124 emit_insn(ctx, ori, rd, LOONGARCH_GPR_ZERO, imm); in move_imm()
132 emit_insn(ctx, lu52id, rd, LOONGARCH_GPR_ZERO, imm_63_52); in move_imm()
138 emit_insn(ctx, lu12iw, rd, imm_31_12); in move_imm()
143 emit_insn(ctx, ori, rd, rd, imm_11_0); in move_imm()
156 emit_insn(ctx, lu32id, rd, imm_51_32); in move_imm()
162 emit_insn(ctx, lu52id, rd, rd, imm_63_52); in move_imm()
166 emit_zext_32(ctx, rd, is32); in move_imm()
169 static inline void move_reg(struct jit_ctx *ctx, enum loongarch_gpr rd, in move_reg() argument
172 emit_insn(ctx, or, rd, rj, LOONGARCH_GPR_ZERO); in move_reg()
204 enum loongarch_gpr rd, int jmp_offset) in cond_jmp_offset() argument
209 emit_insn(ctx, beq, rj, rd, jmp_offset); in cond_jmp_offset()
214 emit_insn(ctx, bne, rj, rd, jmp_offset); in cond_jmp_offset()
218 emit_insn(ctx, bltu, rd, rj, jmp_offset); in cond_jmp_offset()
222 emit_insn(ctx, bltu, rj, rd, jmp_offset); in cond_jmp_offset()
226 emit_insn(ctx, bgeu, rj, rd, jmp_offset); in cond_jmp_offset()
230 emit_insn(ctx, bgeu, rd, rj, jmp_offset); in cond_jmp_offset()
234 emit_insn(ctx, blt, rd, rj, jmp_offset); in cond_jmp_offset()
238 emit_insn(ctx, blt, rj, rd, jmp_offset); in cond_jmp_offset()
242 emit_insn(ctx, bge, rj, rd, jmp_offset); in cond_jmp_offset()
246 emit_insn(ctx, bge, rd, rj, jmp_offset); in cond_jmp_offset()
252 enum loongarch_gpr rd, int jmp_offset) in cond_jmp_offs26() argument
255 cond_jmp_offset(ctx, cond, rj, rd, 2); in cond_jmp_offs26()
265 enum loongarch_gpr rd, int jmp_offset) in emit_cond_jmp() argument
279 cond_jmp_offs26(ctx, cond, rj, rd, jmp_offset); in emit_cond_jmp()
297 enum loongarch_gpr rd, int jmp_offset) in emit_tailcall_jmp() argument
300 cond_jmp_offset(ctx, cond, rj, rd, jmp_offset); in emit_tailcall_jmp()