Home | History | Annotate | Download | only in sljit

Lines Matching refs:buf_ptr

318 static sljit_si resolve_const_pool_index(struct sljit_compiler *compiler, struct future_patch **first_patch, sljit_uw cpool_current_index, sljit_uw *cpool_start_address, sljit_uw *buf_ptr)
366 cpool_start_address[value] = *buf_ptr;
561 sljit_uw *buf_ptr;
617 buf_ptr = (sljit_uw*)buf->memory;
618 buf_end = buf_ptr + (buf->used_size >> 2);
624 buf_ptr++;
628 if (SLJIT_UNLIKELY(resolve_const_pool_index(compiler, &first_patch, cpool_current_index, cpool_start_address, buf_ptr))) {
633 buf_ptr++;
646 else if ((*buf_ptr & 0xff000000) != PUSH_POOL) {
648 *code_ptr = *buf_ptr++;
684 cpool_size = *buf_ptr++ & ~PUSH_POOL;
698 } while (buf_ptr < buf_end);
714 buf_ptr = compiler->cpool;
715 buf_end = buf_ptr + compiler->cpool_fill;
717 while (buf_ptr < buf_end) {
718 if (SLJIT_UNLIKELY(resolve_const_pool_index(compiler, &first_patch, cpool_current_index, cpool_start_address, buf_ptr))) {
723 buf_ptr++;
732 buf_ptr = (sljit_uw*)jump->addr;
737 SLJIT_ASSERT(((sljit_sw)jump->u.label->addr - (sljit_sw)(buf_ptr + 2)) <= 0x01ffffff && ((sljit_sw)jump->u.label->addr - (sljit_sw)(buf_ptr + 2)) >= -0x02000000);
738 *buf_ptr |= (((sljit_sw)jump->u.label->addr - (sljit_sw)(buf_ptr + 2)) >> 2) & 0x00ffffff;
741 SLJIT_ASSERT(((sljit_sw)jump->u.target - (sljit_sw)(buf_ptr + 2)) <= 0x01ffffff && ((sljit_sw)jump->u.target - (sljit_sw)(buf_ptr + 2)) >= -0x02000000);
742 *buf_ptr |= (((sljit_sw)jump->u.target - (sljit_sw)(buf_ptr + 2)) >> 2) & 0x00ffffff;
748 code_ptr[0] = (sljit_uw)buf_ptr;
749 code_ptr[1] = *buf_ptr;
753 inline_set_jump_addr((sljit_uw)buf_ptr, (jump->flags & JUMP_LABEL) ? jump->u.label->addr : jump->u.target, 0);
759 buf_ptr--;
760 if (*buf_ptr & (1 << 23))
761 buf_ptr += ((*buf_ptr & 0xfff) >> 2) + 2;
763 buf_ptr += 1;
764 *buf_ptr = (jump->flags & JUMP_LABEL) ? jump->u.label->addr : jump->u.target;
766 inline_set_jump_addr((sljit_uw)buf_ptr, (jump->flags & JUMP_LABEL) ? jump->u.label->addr : jump->u.target, 0);
775 buf_ptr = (sljit_uw*)const_->addr;
778 code_ptr[0] = (sljit_uw)buf_ptr;
779 code_ptr[1] = *buf_ptr;
780 if (*buf_ptr & (1 << 23))
781 buf_ptr += ((*buf_ptr & 0xfff) >> 2) + 2;
783 buf_ptr += 1;
785 inline_set_const((sljit_uw)code_ptr, *buf_ptr, 0);