Lines Matching refs:op_array

281 	const zend_op_array *op_array;  member
590 const zend_op_array *op_array = &JIT_G(current_frame)->func->op_array; in jit_SNAPSHOT() local
591 uint32_t stack_size = op_array->last_var + op_array->T; in jit_SNAPSHOT()
818 static ir_ref jit_EMALLOC(zend_jit_ctx *jit, size_t size, const zend_op_array *op_array, const zend… in jit_EMALLOC() argument
823 op_array->filename ? ir_CONST_ADDR(op_array->filename->val) : IR_NULL, in jit_EMALLOC()
838 static ir_ref jit_EFREE(zend_jit_ctx *jit, ir_ref ptr, size_t size, const zend_op_array *op_array, … in jit_EFREE() argument
843 op_array && op_array->filename ? ir_CONST_ADDR(op_array->filename->val) : IR_NULL, in jit_EFREE()
2692 jit->op_array = NULL; in zend_jit_init_ctx()
3533 const zend_op *opline = &jit->op_array->opcodes[bb->start + bb->len - 1]; in zend_jit_case_start()
3540 int default_b = jit->ssa->cfg.map[default_opline - jit->op_array->opcodes]; in zend_jit_case_start()
3547 int b = jit->ssa->cfg.map[target - jit->op_array->opcodes]; in zend_jit_case_start()
3745 const zend_op *opline = &jit->op_array->opcodes[bb->start + bb->len - 1]; in zend_jit_bb_end()
7789 const zend_op_array *op_array, in zend_jit_fetch_constant() argument
8162 …ll_frame(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, zend_function *f… argument
8199 ir_LOAD_U32(ir_ADD_OFFSET(func_ref, offsetof(zend_function, op_array.num_args)))),
8200 ir_LOAD_U32(ir_ADD_OFFSET(func_ref, offsetof(zend_function, op_array.last_var)))),
8201 ir_LOAD_U32(ir_ADD_OFFSET(func_ref, offsetof(zend_function, op_array.T))));
8207 ir_LOAD_U32(ir_ADD_OFFSET(func_ref, offsetof(zend_closure, func.op_array.num_args)))),
8208 ir_LOAD_U32(ir_ADD_OFFSET(func_ref, offsetof(zend_closure, func.op_array.last_var)))),
8209 ir_LOAD_U32(ir_ADD_OFFSET(func_ref, offsetof(zend_closure, func.op_array.T))));
8396 …if_cond = ir_IF(ir_LOAD_A(ir_ADD_OFFSET(func_ref, offsetof(zend_closure, func.op_array.run_time_ca…
8424 if (!zend_accel_in_shm(func->op_array.opcodes)) {
8451 const zend_op *opcodes = func->op_array.opcodes;
8467 …d_jit_ctx *jit, const zend_op *opline, uint32_t b, const zend_op_array *op_array, zend_ssa *ssa, c… argument
8469 zend_func_info *info = ZEND_FUNC_INFO(op_array);
8512 } else if (func && op_array == &func->op_array) {
8514 if (!(func->op_array.fn_flags & ZEND_ACC_IMMUTABLE)
8539 && (func->op_array.fn_flags & ZEND_ACC_IMMUTABLE)) {
8573 const zend_op *opcodes = func->op_array.opcodes;
8592 …if (!zend_jit_push_call_frame(jit, opline, op_array, func, 0, 0, checked_stack, func_ref, IR_UNUSE…
8596 if (zend_jit_needs_call_chain(call_info, b, op_array, ssa, ssa_op, opline, call_level, trace)) {
8612 const zend_op_array *op_array, argument
8629 zend_func_info *info = ZEND_FUNC_INFO(op_array);
8776 if ((!func || zend_jit_may_be_modified(func, op_array))
8802 const zend_op *opcodes = func->op_array.opcodes;
8859 if (zend_jit_needs_call_chain(call_info, b, op_array, ssa, ssa_op, opline, call_level, trace)) {
8875 const zend_op_array *op_array, argument
8919 opcodes = func->op_array.opcodes;
8928 ir_LOAD_A(ir_ADD_OFFSET(ref, offsetof(zend_closure, func.op_array.opcodes))),
8943 if (zend_jit_needs_call_chain(NULL, b, op_array, ssa, ssa_op, opline, call_level, trace)) {
9038 …send_ref(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, uint32_t op1_inf… argument
9093 ref = jit_EMALLOC(jit, sizeof(zend_reference), op_array, opline);
9126 …send_var(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, uint32_t op1_inf… argument
9148 if (!zend_jit_send_ref(jit, opline, op_array, op1_info, 0)) {
9162 if (!zend_jit_send_ref(jit, opline, op_array, op1_info, 1)) {
9257 if (!zend_jit_send_ref(jit, opline, op_array, op1_info, 0)) {
9269 if (!zend_jit_send_ref(jit, opline, op_array, op1_info, 1)) {
9386 jit_EFREE(jit, ref, sizeof(zend_reference), op_array, opline);
9514 …do_fcall(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, zend_ssa *ssa, i… argument
9516 zend_func_info *info = ZEND_FUNC_INFO(op_array);
9543 if ((op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)
9578 if (zend_accel_in_shm(trace->func->op_array.opcodes)) {
9694 if (!func || func->op_array.cache_size) {
9697 if (func && op_array == &func->op_array) {
9701 && !(func->op_array.fn_flags & ZEND_ACC_CLOSURE)
9702 && ZEND_MAP_PTR_IS_OFFSET(func->op_array.run_time_cache)) {
9704 (uintptr_t)ZEND_MAP_PTR(func->op_array.run_time_cache)));
9705 } else if ((func && (func->op_array.fn_flags & ZEND_ACC_CLOSURE)) ||
9737 for (i = call_num_args; i < func->op_array.last_var; i++) {
9744 if (call_num_args <= func->op_array.num_args) {
9749 if ((func->op_array.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) != 0) {
9753 num_args = skip_valid_arguments(op_array, ssa, call_info);
9760 if (zend_accel_in_shm(func->op_array.opcodes)) {
9761 jit_LOAD_IP_ADDR(jit, func->op_array.opcodes + num_args);
9773 if (!trace && op_array == &func->op_array && call_num_args >= op_array->required_num_args) {
9783 if (zend_accel_in_shm(func->op_array.opcodes)) {
9784 ip = ir_CONST_ADDR(func->op_array.opcodes);
9804 if (func && zend_accel_in_shm(func->op_array.opcodes)) {
9805 ip = ir_CONST_ADDR(func->op_array.opcodes);
9819 first_extra_arg = ir_CONST_U32(func->op_array.num_args);
9836 if (!func || (func->op_array.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) == 0) {
9870 last_var = ir_CONST_U32(func->op_array.last_var);
10215 …structor(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, zend_ssa *ssa, i… argument
10226 if (!zend_jit_do_fcall(jit, opline, op_array, ssa, call_level, next_block, NULL)) {
10309 static int zend_jit_recv(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array) argument
10314 if (op_array->fn_flags & ZEND_ACC_HAS_TYPE_HINTS) {
10315 if (EXPECTED(arg_num <= op_array->num_args)) {
10316 arg_info = &op_array->arg_info[arg_num-1];
10317 } else if (UNEXPECTED(op_array->fn_flags & ZEND_ACC_VARIADIC)) {
10318 arg_info = &op_array->arg_info[op_array->num_args];
10359 …ecv_init(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, bool is_last, in… argument
10377 (op_array->fn_flags & ZEND_ACC_HAS_TYPE_HINTS)) {
10406 if (op_array->fn_flags & ZEND_ACC_HAS_TYPE_HINTS) {
10410 if (arg_num <= op_array->num_args) {
10411 arg_info = &op_array->arg_info[arg_num-1];
10412 } else if (op_array->fn_flags & ZEND_ACC_VARIADIC) {
10413 arg_info = &op_array->arg_info[op_array->num_args];
10429 …urn_type(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, uint32_t op1_inf… argument
10431 zend_arg_info *arg_info = &op_array->arg_info[-1];
10521 const zend_op_array *op_array, argument
10536 !op_array->function_name || /* may have symbol table */
10538 (op_array->fn_flags & ZEND_ACC_VARIADIC) || /* may have extra named args */
10542 (uint32_t)TRACE_FRAME_NUM_ARGS(JIT_G(current_frame)) > op_array->num_args; /* extra args */
10544 !(op_array->fn_flags & ZEND_ACC_CLOSURE) &&
10545 op_array->scope &&
10546 !(op_array->fn_flags & ZEND_ACC_STATIC) &&
10599 if ((op_array->fn_flags & (ZEND_ACC_CLOSURE|ZEND_ACC_FAKE_CLOSURE)) == ZEND_ACC_CLOSURE) {
10761 static int zend_jit_return(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array,… argument
10767 ZEND_ASSERT(op_array->type != ZEND_EVAL_CODE && op_array->function_name);
10865 !op_array->function_name) {
10909 jit_EFREE(jit, ref, sizeof(zend_reference), op_array, opline);
13579 …etch_this(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array, bool check_only) argument
13581 if (!op_array->scope || (op_array->fn_flags & ZEND_ACC_STATIC)) {
13638 const zend_op_array *op_array, argument
13670 …prop_info = zend_get_known_property_info(op_array, ce, Z_STR_P(member), on_this, op_array->filenam…
13743 …prop_info = zend_get_known_property_info(op_array, trace_ce, Z_STR_P(member), on_this, op_array->f…
13781 …nd_may_be_dynamic_property(ce, Z_STR_P(member), opline->op1_type == IS_UNUSED, op_array->filename);
14095 const zend_op_array *op_array, argument
14132 prop_info = zend_get_known_property_info(op_array, ce, name, on_this, op_array->filename);
14178 prop_info = zend_get_known_property_info(op_array, trace_ce, name, on_this, op_array->filename);
14364 const zend_op_array *op_array, argument
14399 prop_info = zend_get_known_property_info(op_array, ce, name, on_this, op_array->filename);
14445 prop_info = zend_get_known_property_info(op_array, trace_ce, name, on_this, op_array->filename);
14761 const zend_op_array *op_array, argument
14797 prop_info = zend_get_known_property_info(op_array, ce, name, on_this, op_array->filename);
14838 prop_info = zend_get_known_property_info(op_array, trace_ce, name, on_this, op_array->filename);
15237 static int zend_jit_switch(zend_jit_ctx *jit, const zend_op *opline, const zend_op_array *op_array,… argument
15284 b = ssa->cfg.map[ZEND_OFFSET_TO_OPLINE(opline, Z_LVAL_P(jump_zv)) - op_array->opcodes];
15286 b = ssa->cfg.map[ZEND_OFFSET_TO_OPLINE(opline, opline->extended_value) - op_array->opcodes];
15292 zend_ssa_op *ssa_op = ssa->ops ? &ssa->ops[opline - op_array->opcodes] : NULL;
15297 int default_b = next_opline ? -1 : ssa->cfg.map[default_opline - op_array->opcodes];
15426 b = ssa->cfg.map[target - op_array->opcodes];
15551 b = ssa->cfg.map[target - op_array->opcodes];
15681 b = ssa->cfg.map[target - op_array->opcodes];
15753 static int zend_jit_start(zend_jit_ctx *jit, const zend_op_array *op_array, zend_ssa *ssa) argument
15762 jit->op_array = jit->current_op_array = op_array;
15795 str = zend_jit_func_name(jit->op_array);
15799 if (jit->op_array) {
15857 if (jit->op_array) {
15859 const zend_op_array *op_array = jit->op_array; local
15860 zend_op *opline = (zend_op*)op_array->opcodes;
15862 if (!(op_array->fn_flags & ZEND_ACC_HAS_TYPE_HINTS)) {
15874 op_array->opcodes[insn->op2].handler = (char*)entry + insn->op3;
16146 static int zend_jit_trace_handler(zend_jit_ctx *jit, const zend_op_array *op_array, const zend_op *… argument
16149 (zend_jit_op_array_trace_extension*)ZEND_FUNC_INFO(op_array);
16187 if (zend_jit_trace_may_exit(op_array, opline)) {
16312 jit->op_array = NULL;
16322 const zend_op_array *op_array, argument
16333 jit->op_array = NULL;
16334 jit->current_op_array = op_array;
16492 static bool zend_jit_opline_supports_reg(const zend_op_array *op_array, zend_ssa *ssa, const zend_o… argument
16511 return (op_array->type != ZEND_EVAL_CODE && op_array->function_name);
16577 … if (opline > op_array->opcodes + ssa->cfg.blocks[ssa->cfg.map[opline-op_array->opcodes]].start &&
16688 static bool zend_jit_may_be_in_reg(const zend_op_array *op_array, zend_ssa *ssa, int var) argument
16696 if (!zend_jit_opline_supports_reg(op_array, ssa, op_array->opcodes + def, ssa->ops + def, NULL)) {
16705 if (!zend_ssa_is_no_val_use(op_array->opcodes + use, ssa->ops + use, var) &&
16706 … !zend_jit_opline_supports_reg(op_array, ssa, op_array->opcodes + use, ssa->ops + use, NULL)) {
16711 if (op_array->opcodes[use].opcode == ZEND_FETCH_DIM_R) {