Lines Matching refs:dasm_state

325 static void *dasm_link_and_encode(dasm_State             **dasm_state,  in dasm_link_and_encode()  argument
351 zend_jit_label(dasm_state, ssa->cfg.blocks_count + b); in dasm_link_and_encode()
352 zend_jit_prologue(dasm_state); in dasm_link_and_encode()
366 if (!zend_jit_load_var(dasm_state, ssa->var_info[i].type, ssa->vars[i].var, ival->reg)) { in dasm_link_and_encode()
375 zend_jit_jmp(dasm_state, b); in dasm_link_and_encode()
379 ret = dasm_link(dasm_state, &size); in dasm_link_and_encode()
393 ret = dasm_encode(dasm_state, *dasm_ptr); in dasm_link_and_encode()
418 int offset = dasm_getpclabel(dasm_state, ssa->cfg.blocks_count + b); in dasm_link_and_encode()
428 int offset = dasm_getpclabel(dasm_state, ssa->cfg.blocks_count + b); in dasm_link_and_encode()
2108 dasm_State* dasm_state = NULL; in zend_jit() local
2154 dasm_init(&dasm_state, DASM_MAXSECTION); in zend_jit()
2155 dasm_setupglobal(&dasm_state, dasm_labels, zend_lb_MAX); in zend_jit()
2156 dasm_setup(&dasm_state, dasm_actions); in zend_jit()
2158 dasm_growpc(&dasm_state, ssa->cfg.blocks_count * 2 + 1); in zend_jit()
2160 zend_jit_align_func(&dasm_state); in zend_jit()
2178 zend_jit_jmp(&dasm_state, b); in zend_jit()
2181 zend_jit_label(&dasm_state, ssa->cfg.blocks_count + b); in zend_jit()
2182 zend_jit_prologue(&dasm_state); in zend_jit()
2192 zend_jit_jmp(&dasm_state, b); in zend_jit()
2194 zend_jit_label(&dasm_state, ssa->cfg.blocks_count + b); in zend_jit()
2196 zend_jit_label(&dasm_state, ssa->cfg.blocks_count + b + i); in zend_jit()
2198 zend_jit_prologue(&dasm_state); in zend_jit()
2206 zend_jit_jmp(&dasm_state, b); in zend_jit()
2207 zend_jit_label(&dasm_state, ssa->cfg.blocks_count + b); in zend_jit()
2208 zend_jit_prologue(&dasm_state); in zend_jit()
2224 zend_jit_label(&dasm_state, ssa->cfg.blocks_count + b); in zend_jit()
2225 zend_jit_prologue(&dasm_state); in zend_jit()
2230 zend_jit_jmp(&dasm_state, b); in zend_jit()
2235 dasm_free(&dasm_state); in zend_jit()
2242 zend_jit_label(&dasm_state, ssa->cfg.blocks_count + b); in zend_jit()
2243 zend_jit_prologue(&dasm_state); in zend_jit()
2250 dasm_free(&dasm_state); in zend_jit()
2257 zend_jit_label(&dasm_state, ssa->cfg.blocks_count + b); in zend_jit()
2258 zend_jit_prologue(&dasm_state); in zend_jit()
2264 zend_jit_label(&dasm_state, b); in zend_jit()
2273 if (!zend_jit_set_ip(&dasm_state, op_array->opcodes + ssa->cfg.blocks[b].start)) { in zend_jit()
2285 if (!zend_jit_check_timeout(&dasm_state, op_array->opcodes + ssa->cfg.blocks[b].start, NULL)) { in zend_jit()
2302 …if (!zend_jit_load_var(&dasm_state, ssa->var_info[phi->ssa_var].type, ssa->vars[phi->ssa_var].var,… in zend_jit()
2308 …if (!zend_jit_store_var(&dasm_state, ssa->var_info[phi->ssa_var].type, ssa->vars[phi->ssa_var].var… in zend_jit()
2368 if (!zend_jit_inc_dec(&dasm_state, opline, in zend_jit()
2407 if (!zend_jit_reuse_ip(&dasm_state)) { in zend_jit()
2426 if (!zend_jit_long_math(&dasm_state, opline, in zend_jit()
2465 if (!zend_jit_reuse_ip(&dasm_state)) { in zend_jit()
2488 if (!zend_jit_add_arrays(&dasm_state, opline, op1_info, op2_info, res_addr)) { in zend_jit()
2492 if (!zend_jit_math(&dasm_state, opline, in zend_jit()
2526 if (!zend_jit_reuse_ip(&dasm_state)) { in zend_jit()
2530 if (!zend_jit_concat(&dasm_state, opline, in zend_jit()
2550 if (!zend_jit_assign_op(&dasm_state, opline, in zend_jit()
2569 if (!zend_jit_assign_dim_op(&dasm_state, opline, in zend_jit()
2583 if (!zend_jit_assign_dim(&dasm_state, opline, in zend_jit()
2625 if (!zend_jit_incdec_obj(&dasm_state, opline, op_array, ssa, ssa_op, in zend_jit()
2672 if (!zend_jit_assign_obj_op(&dasm_state, opline, op_array, ssa, ssa_op, in zend_jit()
2712 if (!zend_jit_assign_obj(&dasm_state, opline, op_array, ssa, ssa_op, in zend_jit()
2754 if (!zend_jit_reuse_ip(&dasm_state)) { in zend_jit()
2759 if (!zend_jit_assign(&dasm_state, opline, in zend_jit()
2777 if (!zend_jit_qm_assign(&dasm_state, opline, in zend_jit()
2786 … if (!zend_jit_init_fcall(&dasm_state, opline, b, op_array, ssa, ssa_op, call_level, NULL, 1)) { in zend_jit()
2800 if (!zend_jit_send_val(&dasm_state, opline, in zend_jit()
2810 if (!zend_jit_send_ref(&dasm_state, opline, op_array, in zend_jit()
2837 if (!zend_jit_send_var(&dasm_state, opline, op_array, in zend_jit()
2850 if (!zend_jit_check_func_arg(&dasm_state, opline)) { in zend_jit()
2855 if (!zend_jit_check_undef_args(&dasm_state, opline)) { in zend_jit()
2865 if (!zend_jit_do_fcall(&dasm_state, opline, op_array, ssa, call_level, b + 1, NULL)) { in zend_jit()
2897 if (!zend_jit_cmp(&dasm_state, opline, in zend_jit()
2926 if (!zend_jit_identical(&dasm_state, opline, in zend_jit()
2952 …if (!zend_jit_defined(&dasm_state, opline, smart_branch_opcode, target_label, target_label2, NULL)… in zend_jit()
2976 …if (!zend_jit_type_check(&dasm_state, opline, OP1_INFO(), smart_branch_opcode, target_label, targe… in zend_jit()
2988 if (!zend_jit_tail_handler(&dasm_state, opline)) { in zend_jit()
2995 if (!zend_jit_return(&dasm_state, opline, op_array, in zend_jit()
3000 if (!zend_jit_jmp(&dasm_state, jit_return_label)) { in zend_jit()
3006 if (!zend_jit_label(&dasm_state, jit_return_label)) { in zend_jit()
3015 if (!zend_jit_leave_frame(&dasm_state)) { in zend_jit()
3019 if (!zend_jit_free_cv(&dasm_state, info, j)) { in zend_jit()
3024 if (!zend_jit_leave_func(&dasm_state, op_array, opline, op1_info, left_frame, in zend_jit()
3032 if (!zend_jit_bool_jmpznz(&dasm_state, opline, in zend_jit()
3045 if (!zend_jit_cond_jmp(&dasm_state, opline + 1, ssa->cfg.blocks[b].successors[0])) { in zend_jit()
3059 if (!zend_jit_bool_jmpznz(&dasm_state, opline, in zend_jit()
3087 if (!zend_jit_isset_isempty_cv(&dasm_state, opline, in zend_jit()
3117 if (!zend_jit_in_array(&dasm_state, opline, in zend_jit()
3130 if (!zend_jit_fetch_dim_read(&dasm_state, opline, ssa, ssa_op, in zend_jit()
3147 if (!zend_jit_fetch_dim(&dasm_state, opline, in zend_jit()
3177 if (!zend_jit_isset_isempty_dim(&dasm_state, opline, in zend_jit()
3218 if (!zend_jit_fetch_obj(&dasm_state, opline, op_array, ssa, ssa_op, in zend_jit()
3230 if (!zend_jit_bind_global(&dasm_state, opline, op1_info)) { in zend_jit()
3235 if (!zend_jit_recv(&dasm_state, opline, op_array)) { in zend_jit()
3240 if (!zend_jit_recv_init(&dasm_state, opline, op_array, in zend_jit()
3248 if (!zend_jit_free(&dasm_state, opline, OP1_INFO(), in zend_jit()
3258 if (!zend_jit_echo(&dasm_state, opline, op1_info)) { in zend_jit()
3267 if (!zend_jit_strlen(&dasm_state, opline, op1_info, OP1_REG_ADDR())) { in zend_jit()
3272 if (!zend_jit_fetch_this(&dasm_state, opline, op_array, 0)) { in zend_jit()
3279 if (!zend_jit_switch(&dasm_state, opline, op_array, ssa, NULL, NULL)) { in zend_jit()
3300 if (!zend_jit_verify_return_type(&dasm_state, opline, op_array, OP1_INFO())) { in zend_jit()
3309 if (!zend_jit_fe_reset(&dasm_state, opline, op1_info)) { in zend_jit()
3318 if (!zend_jit_fe_fetch(&dasm_state, opline, op1_info, OP2_INFO(), in zend_jit()
3324 if (!zend_jit_fetch_constant(&dasm_state, opline, op_array, ssa, ssa_op)) { in zend_jit()
3357 if (!zend_jit_init_method_call(&dasm_state, opline, b, op_array, ssa, ssa_op, call_level, in zend_jit()
3374 if (!zend_jit_handler(&dasm_state, opline, in zend_jit()
3391 if (!zend_jit_set_ip(&dasm_state, target)) { in zend_jit()
3395 if (!zend_jit_jmp(&dasm_state, ssa->cfg.blocks[b].successors[0])) { in zend_jit()
3412 if (!zend_jit_tail_handler(&dasm_state, opline)) { in zend_jit()
3422 if (!zend_jit_call(&dasm_state, opline, b + 1)) { in zend_jit()
3428 if (!zend_jit_handler(&dasm_state, opline, in zend_jit()
3430 …!zend_jit_cond_jmp(&dasm_state, OP_JMP_ADDR(opline, opline->op2), ssa->cfg.blocks[b].successors[1]… in zend_jit()
3431 !zend_jit_jmp(&dasm_state, ssa->cfg.blocks[b].successors[0])) { in zend_jit()
3441 if (!zend_jit_cond_jmp(&dasm_state, opline + 1, ssa->cfg.blocks[b].successors[0])) { in zend_jit()
3457 if (!zend_jit_handler(&dasm_state, opline, in zend_jit()
3459 !zend_jit_cond_jmp(&dasm_state, opline + 1, ssa->cfg.blocks[b].successors[0])) { in zend_jit()
3464 if (!zend_jit_handler(&dasm_state, opline, 1)) { in zend_jit()
3492 zend_jit_cond_jmp(&dasm_state, next_opline, ssa->cfg.blocks[b].successors[0]); in zend_jit()
3494 zend_jit_call(&dasm_state, next_opline, b + 1); in zend_jit()
3497 zend_jit_do_fcall(&dasm_state, next_opline, op_array, ssa, call_level, b + 1, NULL); in zend_jit()
3503 if (!zend_jit_handler(&dasm_state, opline, in zend_jit()
3510 if (!zend_jit_cond_jmp(&dasm_state, opline + 2, ssa->cfg.blocks[b+1].successors[0])) { in zend_jit()
3513 if (!zend_jit_jmp(&dasm_state, ssa->cfg.blocks[b+1].successors[1])) { in zend_jit()
3530 handler = dasm_link_and_encode(&dasm_state, op_array, ssa, rt_opline, ra, NULL, 0); in zend_jit()
3534 dasm_free(&dasm_state); in zend_jit()
3542 if (dasm_state) { in zend_jit()
3543 dasm_free(&dasm_state); in zend_jit()
4105 dasm_State* dasm_state = NULL; in zend_jit_make_stubs() local
4108 dasm_init(&dasm_state, DASM_MAXSECTION); in zend_jit_make_stubs()
4109 dasm_setupglobal(&dasm_state, dasm_labels, zend_lb_MAX); in zend_jit_make_stubs()
4112 dasm_setup(&dasm_state, dasm_actions); in zend_jit_make_stubs()
4113 if (!zend_jit_stubs[i].stub(&dasm_state)) { in zend_jit_make_stubs()
4116 if (!dasm_link_and_encode(&dasm_state, NULL, NULL, NULL, NULL, zend_jit_stubs[i].name, 0)) { in zend_jit_make_stubs()
4123 dasm_free(&dasm_state); in zend_jit_make_stubs()