Home | History | Annotate | Download | only in sljit

Lines Matching refs:code_ptr

42 static sljit_ub* generate_far_jump_code(struct sljit_jump *jump, sljit_ub *code_ptr, sljit_si type)
46 *code_ptr++ = get_jump_code(type ^ 0x1) - 0x10;
47 *code_ptr++ = 10 + 3;
51 *code_ptr++ = REX_W | REX_B;
52 *code_ptr++ = MOV_r_i32 + 1;
53 jump->addr = (sljit_uw)code_ptr;
58 *(sljit_sw*)code_ptr = jump->u.target;
60 code_ptr += sizeof(sljit_sw);
61 *code_ptr++ = REX_B;
62 *code_ptr++ = GROUP_FF;
63 *code_ptr++ = (type >= SLJIT_FAST_CALL) ? (MOD_REG | CALL_rm | 1) : (MOD_REG | JMP_rm | 1);
65 return code_ptr;
68 static sljit_ub* generate_fixed_jump(sljit_ub *code_ptr, sljit_sw addr, sljit_si type)
70 sljit_sw delta = addr - ((sljit_sw)code_ptr + 1 + sizeof(sljit_si));
73 *code_ptr++ = (type == 2) ? CALL_i32 : JMP_i32;
74 *(sljit_sw*)code_ptr = delta;
78 *code_ptr++ = REX_W | REX_B;
79 *code_ptr++ = MOV_r_i32 + 1;
80 *(sljit_sw*)code_ptr = addr;
81 code_ptr += sizeof(sljit_sw);
82 *code_ptr++ = REX_B;
83 *code_ptr++ = GROUP_FF;
84 *code_ptr++ = (type == 2) ? (MOD_REG | CALL_rm | 1) : (MOD_REG | JMP_rm | 1);
87 return code_ptr;