Lines Matching refs:inst

274 static sljit_s32 push_inst16(struct sljit_compiler *compiler, sljit_ins inst)  in push_inst16()  argument
277 SLJIT_ASSERT(!(inst & 0xffff0000)); in push_inst16()
281 *ptr = (sljit_u16)(inst); in push_inst16()
286 static sljit_s32 push_inst32(struct sljit_compiler *compiler, sljit_ins inst) in push_inst32() argument
290 *ptr++ = (sljit_u16)(inst >> 16); in push_inst32()
291 *ptr = (sljit_u16)(inst); in push_inst32()
305 static void set_imm32_const(sljit_u16 *inst, sljit_ins dst, sljit_uw new_imm) in set_imm32_const() argument
307 inst[0] = (sljit_u16)((MOVW >> 16) | COPY_BITS(new_imm, 12, 0, 4) | COPY_BITS(new_imm, 11, 10, 1)); in set_imm32_const()
308 inst[1] = (sljit_u16)(dst | COPY_BITS(new_imm, 8, 12, 3) | (new_imm & 0xff)); in set_imm32_const()
309inst[2] = (sljit_u16)((MOVT >> 16) | COPY_BITS(new_imm, 12 + 16, 0, 4) | COPY_BITS(new_imm, 11 + 1… in set_imm32_const()
310 inst[3] = (sljit_u16)(dst | COPY_BITS(new_imm, 8 + 16, 12, 3) | ((new_imm & 0xff0000) >> 16)); in set_imm32_const()
313 static SLJIT_INLINE void modify_imm32_const(sljit_u16 *inst, sljit_uw new_imm) in modify_imm32_const() argument
315 sljit_ins dst = inst[1] & 0x0f00; in modify_imm32_const()
316 …SLJIT_ASSERT(((inst[0] & 0xfbf0) == (MOVW >> 16)) && ((inst[2] & 0xfbf0) == (MOVT >> 16)) && dst =… in modify_imm32_const()
317 set_imm32_const(inst, dst, new_imm); in modify_imm32_const()
2233 sljit_ins inst = VSTR_F32 | (flags & (SLJIT_32 | FPU_LOAD)); in emit_fop_mem() local
2246 …return push_inst32(compiler, inst | 0x800000 | RN4(arg & REG_MASK) | VD4(reg) | ((sljit_uw)argw >>… in emit_fop_mem()
2248 return push_inst32(compiler, inst | RN4(arg & REG_MASK) | VD4(reg) | ((sljit_uw)-argw >> 2)); in emit_fop_mem()
2254 return push_inst32(compiler, inst | 0x800000 | RN4(TMP_REG1) | VD4(reg)); in emit_fop_mem()
2260 …return push_inst32(compiler, inst | 0x800000 | RN4(TMP_REG1) | VD4(reg) | (((sljit_uw)argw & 0x3fc… in emit_fop_mem()
2267 return push_inst32(compiler, inst | RN4(TMP_REG1) | VD4(reg) | (((sljit_uw)argw & 0x3fc) >> 2)); in emit_fop_mem()
2274 return push_inst32(compiler, inst | 0x800000 | RN4(TMP_REG1) | VD4(reg)); in emit_fop_mem()
2531 sljit_ins inst; in sljit_emit_fcopy() local
2540 inst = VMOV2 | RN4(reg) | RT4(reg2) | VM4(freg); in sljit_emit_fcopy()
2542 inst = VMOV | VN4(freg) | RT4(reg); in sljit_emit_fcopy()
2545 inst |= 1 << 7; in sljit_emit_fcopy()
2549 inst |= 1 << 20; in sljit_emit_fcopy()
2551 return push_inst32(compiler, inst); in sljit_emit_fcopy()
3387 sljit_ins inst; in sljit_emit_mem_update() local
3427 inst = sljit_mem32[flags] | 0x900; in sljit_emit_mem_update()
3430 inst |= 0x400; in sljit_emit_mem_update()
3433 inst |= 0x200; in sljit_emit_mem_update()
3437 return push_inst32(compiler, inst | RT4(reg) | RN4(mem & REG_MASK) | (sljit_ins)memw); in sljit_emit_mem_update()
4289 sljit_u16 *inst = (sljit_u16*)addr; in sljit_set_jump_addr() local
4292 SLJIT_UPDATE_WX_FLAGS(inst, inst + 4, 0); in sljit_set_jump_addr()
4293 modify_imm32_const(inst, new_target); in sljit_set_jump_addr()
4294 SLJIT_UPDATE_WX_FLAGS(inst, inst + 4, 1); in sljit_set_jump_addr()
4295 inst = (sljit_u16 *)SLJIT_ADD_EXEC_OFFSET(inst, executable_offset); in sljit_set_jump_addr()
4296 SLJIT_CACHE_FLUSH(inst, inst + 4); in sljit_set_jump_addr()