Lines Matching refs:ins

156 static sljit_s32 push_inst(struct sljit_compiler *compiler, sljit_ins ins)  in push_inst()  argument
160 *ptr = ins; in push_inst()
165 static sljit_s32 push_imm_s_inst(struct sljit_compiler *compiler, sljit_ins ins, sljit_sw imm) in push_imm_s_inst() argument
167 return push_inst(compiler, ins | IMM_S(imm)); in push_imm_s_inst()
191 diff += SSIZE_OF(ins); in detect_jump_type()
201 diff -= SSIZE_OF(ins); in detect_jump_type()
315 sljit_ins *ins = (sljit_ins*)jump->addr; in load_addr_to_reg() local
316 sljit_u32 reg = (flags & JUMP_MOV_ADDR) ? *ins : TMP_REG1; in load_addr_to_reg()
324 addr -= (sljit_uw)SLJIT_ADD_EXEC_OFFSET(ins, executable_offset); in load_addr_to_reg()
331 ins[0] = AUIPC | RD(reg) | (sljit_ins)((sljit_sw)addr & ~0xfff); in load_addr_to_reg()
334 SLJIT_ASSERT((ins[1] & 0x707f) == JALR); in load_addr_to_reg()
335 ins[1] = (ins[1] & 0xfffff) | IMM_I(addr); in load_addr_to_reg()
337 ins[1] = ADDI | RD(reg) | RS1(reg) | IMM_I(addr); in load_addr_to_reg()
346 ins[0] = LUI | RD(reg) | (sljit_ins)((sljit_sw)addr & ~0xfff); in load_addr_to_reg()
351 ins[0] = LUI | RD(reg) | (sljit_ins)((sljit_sw)addr & ~0xfff); in load_addr_to_reg()
358 ins[0] = LUI | RD(reg) | (sljit_ins)0x80000000u; in load_addr_to_reg()
359 ins[1] = XORI | RD(reg) | RS1(reg) | IMM_I(high); in load_addr_to_reg()
364 ins[0] = LUI | RD(reg) | (sljit_ins)(high & ~0xfff); in load_addr_to_reg()
365 ins[1] = ADDI | RD(reg) | RS1(reg) | IMM_I(high); in load_addr_to_reg()
368 ins[2] = SLLI | RD(reg) | RS1(reg) | IMM_I(12); in load_addr_to_reg()
369 ins += 2; in load_addr_to_reg()
378 ins[0] = LUI | RD(TMP_REG3) | (sljit_ins)(high << 12); in load_addr_to_reg()
382 ins[0] = LUI | RD(TMP_REG3) | (sljit_ins)(high & ~0xfff); in load_addr_to_reg()
383 ins[1] = ADDI | RD(TMP_REG3) | RS1(TMP_REG3) | IMM_I(high); in load_addr_to_reg()
384 ins++; in load_addr_to_reg()
387 ins[1] = LUI | RD(reg) | (sljit_ins)((sljit_sw)addr & ~0xfff); in load_addr_to_reg()
388 ins[2] = SLLI | RD(TMP_REG3) | RS1(TMP_REG3) | IMM_I((flags & PATCH_ABS52) ? 20 : 32); in load_addr_to_reg()
389 ins[3] = XOR | RD(reg) | RS1(reg) | RS2(TMP_REG3); in load_addr_to_reg()
390 ins += 3; in load_addr_to_reg()
395 SLJIT_ASSERT((ins[1] & 0x707f) == JALR); in load_addr_to_reg()
396 ins[1] = (ins[1] & 0xfffff) | IMM_I(addr); in load_addr_to_reg()
398 ins[1] = ADDI | RD(reg) | RS1(reg) | IMM_I(addr); in load_addr_to_reg()
457 … & IS_COND) && (diff + 1) <= (BRANCH_MAX / SSIZE_OF(ins)) && (diff + 1) >= (BRANCH_MIN / SSIZE_OF( in reduce_code_size()
459 else if (diff >= (JUMP_MIN / SSIZE_OF(ins)) && diff <= (JUMP_MAX / SSIZE_OF(ins))) in reduce_code_size()
462 else if (diff >= (S32_MIN / SSIZE_OF(ins)) && diff <= (S32_MAX / SSIZE_OF(ins))) in reduce_code_size()
478 if (diff >= (S32_MIN / SSIZE_OF(ins)) && diff <= (S32_MAX / SSIZE_OF(ins))) in reduce_code_size()
975 sljit_ins ins; in push_mem_inst() local
979 ins = data_transfer_insts[flags & MEM_MASK] | RS1(base); in push_mem_inst()
981 ins |= ((flags & MEM_MASK) <= GPR_REG ? RD(reg) : FRD(reg)) | IMM_I(offset); in push_mem_inst()
983 ins |= ((flags & MEM_MASK) <= GPR_REG ? RS2(reg) : FRS2(reg)) | IMM_S(offset); in push_mem_inst()
985 return push_inst(compiler, ins); in push_mem_inst()
1184 …2(TMP_ZERO) | ((sljit_ins)((is_clz ? 4 : 5) * SSIZE_OF(ins)) << 7) | ((sljit_ins)(8 * SSIZE_OF(ins in emit_clz_ctz()
1189 …(TMP_REG1) | RS2(TMP_ZERO) | ((sljit_ins)(2 * SSIZE_OF(ins)) << 7) | ((sljit_ins)(8 * SSIZE_OF(ins in emit_clz_ctz()
1191 …(TMP_REG2) | RS2(TMP_ZERO) | ((sljit_ins)(2 * SSIZE_OF(ins)) << 7) | ((sljit_ins)(8 * SSIZE_OF(ins in emit_clz_ctz()
1200 …iler, BNE | RS1(TMP_REG2) | RS2(TMP_ZERO) | ((sljit_ins)0xfe000e80 - ((2 * SSIZE_OF(ins)) << 7)))); in emit_clz_ctz()
1204 …iler, BEQ | RS1(TMP_REG2) | RS2(TMP_ZERO) | ((sljit_ins)0xfe000e80 - ((5 * SSIZE_OF(ins)) << 7)))); in emit_clz_ctz()
2264 static sljit_s32 sljit_emit_fop1_conv_f64_from_w(struct sljit_compiler *compiler, sljit_ins ins, in sljit_emit_fop1_conv_f64_from_w() argument
2274 …FAIL_IF(emit_op_mem2(compiler, ((ins & (1 << 21)) ? WORD_DATA : INT_DATA) | LOAD_DATA, TMP_REG1, s… in sljit_emit_fop1_conv_f64_from_w()
2282 FAIL_IF(push_inst(compiler, ins | FRD(dst_r) | RS1(src))); in sljit_emit_fop1_conv_f64_from_w()
2285 …return emit_op_mem2(compiler, DOUBLE_DATA | ((sljit_s32)(~ins >> 24) & 0x2), TMP_FREG1, dst, dstw,… in sljit_emit_fop1_conv_f64_from_w()
2293 sljit_ins ins = FCVT_S_W | FMT(op); in sljit_emit_fop1_conv_f64_from_sw() local
2297 ins |= F3(0x7); in sljit_emit_fop1_conv_f64_from_sw()
2300 ins |= (1 << 21); in sljit_emit_fop1_conv_f64_from_sw()
2305 ins |= F3(0x7); in sljit_emit_fop1_conv_f64_from_sw()
2308 return sljit_emit_fop1_conv_f64_from_w(compiler, ins, dst, dstw, src, srcw); in sljit_emit_fop1_conv_f64_from_sw()
2315 sljit_ins ins = FCVT_S_WU | FMT(op); in sljit_emit_fop1_conv_f64_from_uw() local
2319 ins |= F3(0x7); in sljit_emit_fop1_conv_f64_from_uw()
2322 ins |= (1 << 21); in sljit_emit_fop1_conv_f64_from_uw()
2327 ins |= F3(0x7); in sljit_emit_fop1_conv_f64_from_uw()
2330 return sljit_emit_fop1_conv_f64_from_w(compiler, ins, dst, dstw, src, srcw); in sljit_emit_fop1_conv_f64_from_uw()