Lines Matching refs:code_ptr

207 static SLJIT_INLINE sljit_ins* detect_jump_type(struct sljit_jump *jump, sljit_ins *code_ptr, sljit…  in detect_jump_type()  argument
222 diff = (sljit_sw)target_addr - (sljit_sw)code_ptr - executable_offset; in detect_jump_type()
227 *(--code_ptr) ^= (jump->flags & IS_CBZ) ? (0x1 << 24) : 0x1; in detect_jump_type()
230 return code_ptr; in detect_jump_type()
237 code_ptr[-1] -= (4 << 5); in detect_jump_type()
239 return code_ptr; in detect_jump_type()
244 code_ptr[-1] -= (2 << 5); in detect_jump_type()
245 code_ptr[2] = code_ptr[0]; in detect_jump_type()
246 return code_ptr + 2; in detect_jump_type()
251 code_ptr[-1] -= (2 << 5); in detect_jump_type()
253 code_ptr[2] = code_ptr[0]; in detect_jump_type()
254 return code_ptr + 2; in detect_jump_type()
259 code_ptr[-1] -= (1 << 5); in detect_jump_type()
261 code_ptr[3] = code_ptr[0]; in detect_jump_type()
262 return code_ptr + 3; in detect_jump_type()
267 code_ptr[4] = code_ptr[0]; in detect_jump_type()
268 return code_ptr + 4; in detect_jump_type()
271 static SLJIT_INLINE sljit_sw mov_addr_get_length(struct sljit_jump *jump, sljit_ins *code_ptr, slji… in mov_addr_get_length() argument
283 diff = (sljit_sw)addr - (sljit_sw)SLJIT_ADD_EXEC_OFFSET(code_ptr, executable_offset); in mov_addr_get_length()
467 sljit_ins *code_ptr; in sljit_generate_code() local
490 code_ptr = code; in sljit_generate_code()
502 *code_ptr = *buf_ptr++; in sljit_generate_code()
510 label->u.addr = (sljit_uw)SLJIT_ADD_EXEC_OFFSET(code_ptr, executable_offset); in sljit_generate_code()
511 label->size = (sljit_uw)(code_ptr - code); in sljit_generate_code()
519 jump->addr = (sljit_uw)code_ptr; in sljit_generate_code()
520 code_ptr = detect_jump_type(jump, code_ptr, code, executable_offset); in sljit_generate_code()
521 …SLJIT_ASSERT((jump->flags & PATCH_COND) || ((sljit_uw)code_ptr - jump->addr < (jump->flags >> JUMP… in sljit_generate_code()
524 addr = (sljit_sw)code_ptr; in sljit_generate_code()
525 code_ptr += mov_addr_get_length(jump, code_ptr, code, executable_offset); in sljit_generate_code()
532 const_->addr = (sljit_uw)code_ptr; in sljit_generate_code()
539 code_ptr++; in sljit_generate_code()
547 label->u.addr = (sljit_uw)SLJIT_ADD_EXEC_OFFSET(code_ptr, executable_offset); in sljit_generate_code()
548 label->size = (sljit_uw)(code_ptr - code); in sljit_generate_code()
555 SLJIT_ASSERT(code_ptr - code <= (sljit_sw)compiler->size); in sljit_generate_code()
565 compiler->executable_size = (sljit_uw)(code_ptr - code) * sizeof(sljit_ins); in sljit_generate_code()
568 code_ptr = (sljit_ins *)SLJIT_ADD_EXEC_OFFSET(code_ptr, executable_offset); in sljit_generate_code()
570 SLJIT_CACHE_FLUSH(code, code_ptr); in sljit_generate_code()
571 SLJIT_UPDATE_WX_FLAGS(code, code_ptr, 1); in sljit_generate_code()