Lines Matching refs:flags

171 static uint32_t zend_jit_trace_get_exit_point(const zend_op *to_opline, uint32_t flags)  in zend_jit_trace_get_exit_point()  argument
182 flags |= ZEND_JIT_EXIT_RESTORE_CALL; in zend_jit_trace_get_exit_point()
214 && t->exit_info[i].flags == flags in zend_jit_trace_get_exit_point()
234 t->exit_info[exit_point].flags = flags; in zend_jit_trace_get_exit_point()
399 } else if ((!op_array->function_name || (ssa->cfg.flags & ZEND_FUNC_INDIRECT_VAR_ACCESS))) { in zend_jit_var_may_alias()
561 jit_extension->func_info.flags &= ZEND_FUNC_JIT_ON_FIRST_EXEC in zend_jit_trace_build_ssa()
603 ssa->cfg.flags = cfg.flags; in zend_jit_trace_build_ssa()
605 ssa->cfg.flags |= ZEND_FUNC_INDIRECT_VAR_ACCESS; in zend_jit_trace_build_ssa()
610 ssa->cfg.flags |= ZEND_FUNC_INDIRECT_VAR_ACCESS; in zend_jit_trace_build_ssa()
1225 ssa->cfg.flags |= ZEND_FUNC_INDIRECT_VAR_ACCESS; in zend_jit_trace_build_tssa()
1236 ssa->cfg.flags |= ZEND_FUNC_INDIRECT_VAR_ACCESS; in zend_jit_trace_build_tssa()
1239 ssa->cfg.flags |= ZEND_FUNC_INDIRECT_VAR_ACCESS; in zend_jit_trace_build_tssa()
1257 ssa->cfg.flags |= ZEND_FUNC_INDIRECT_VAR_ACCESS; in zend_jit_trace_build_tssa()
1329 tssa->cfg.flags = ZEND_SSA_TSSA; in zend_jit_trace_build_tssa()
1343 tssa->cfg.blocks[0].flags = ZEND_BB_START|ZEND_BB_REACHABLE; in zend_jit_trace_build_tssa()
1349 tssa->cfg.blocks[0].flags = ZEND_BB_FOLLOW|ZEND_BB_TARGET|ZEND_BB_LOOP_HEADER|ZEND_BB_REACHABLE; in zend_jit_trace_build_tssa()
1358 tssa->cfg.blocks[0].flags = ZEND_BB_START|ZEND_BB_EXIT|ZEND_BB_REACHABLE; in zend_jit_trace_build_tssa()
2649 …_close_var(zend_jit_trace_stack *stack, uint32_t n, int *start, int *end, uint8_t *flags, int line) in zend_jit_close_var() argument
2653 if (var >= 0 && start[var] >= 0 && !(flags[var] & ZREG_LAST_USE)) { in zend_jit_close_var()
2659 …int line, int var, int def, int use_chain, int *start, int *end, uint8_t *flags, const zend_ssa *s… in zend_jit_trace_use_var() argument
2662 ZEND_ASSERT(!(flags[var] & ZREG_LAST_USE)); in zend_jit_trace_use_var()
2665 flags[var] |= ZREG_LAST_USE; in zend_jit_trace_use_var()
2666 } else if (use_chain < 0 && (flags[var] & (ZREG_LOAD|ZREG_STORE))) { in zend_jit_trace_use_var()
2667 flags[var] |= ZREG_LAST_USE; in zend_jit_trace_use_var()
2675 flags[var] |= ZREG_LAST_USE; in zend_jit_trace_use_var()
2679 flags[var] |= ZREG_LAST_USE; in zend_jit_trace_use_var()
2683 flags[var] |= ZREG_LAST_USE; in zend_jit_trace_use_var()
2700 uint8_t *flags; in zend_jit_trace_allocate_registers() local
2722 flags = (uint8_t*)(end + ssa->vars_count); in zend_jit_trace_allocate_registers()
2727 memset(flags, 0, sizeof(uint8_t) * ssa->vars_count); in zend_jit_trace_allocate_registers()
2759 flags[i] = STACK_FLAGS(parent_stack, i); in zend_jit_trace_allocate_registers()
2762 flags[i] = ZREG_LOAD; in zend_jit_trace_allocate_registers()
2821 …idx, ssa_op->op1_use, ssa_op->op1_def, ssa_op->op1_use_chain, start, end, flags, ssa, ssa_opcodes,… in zend_jit_trace_allocate_registers()
2837 flags[ssa_op->op1_use] |= ZREG_STORE; in zend_jit_trace_allocate_registers()
2839 flags[ssa_op->op1_use] |= ZREG_LAST_USE; in zend_jit_trace_allocate_registers()
2853 …idx, ssa_op->op2_use, ssa_op->op2_def, ssa_op->op2_use_chain, start, end, flags, ssa, ssa_opcodes,… in zend_jit_trace_allocate_registers()
2855 flags[ssa_op->op2_use] |= ZREG_LAST_USE; in zend_jit_trace_allocate_registers()
2869 …sa_op->result_use, ssa_op->result_def, ssa_op->res_use_chain, start, end, flags, ssa, ssa_opcodes,… in zend_jit_trace_allocate_registers()
2878 zend_jit_close_var(stack, EX_VAR_TO_NUM(opline->op1.var), start, end, flags, idx); in zend_jit_trace_allocate_registers()
2882 zend_jit_close_var(stack, EX_VAR_TO_NUM(opline->op2.var), start, end, flags, idx); in zend_jit_trace_allocate_registers()
2886 zend_jit_close_var(stack, EX_VAR_TO_NUM(opline->result.var), start, end, flags, idx); in zend_jit_trace_allocate_registers()
2951 …idx, ssa_op->op1_use, ssa_op->op1_def, ssa_op->op1_use_chain, start, end, flags, ssa, ssa_opcodes,… in zend_jit_trace_allocate_registers()
2953 flags[ssa_op->op1_use] |= ZREG_LAST_USE; in zend_jit_trace_allocate_registers()
2962 zend_jit_close_var(stack, EX_VAR_TO_NUM(opline->op1.var), start, end, flags, idx); in zend_jit_trace_allocate_registers()
2985 zend_jit_close_var(stack, EX_VAR_TO_NUM(opline->result.var), start, end, flags, idx); in zend_jit_trace_allocate_registers()
3000 zend_jit_close_var(stack, EX_VAR_TO_NUM(opline->op1.var), start, end, flags, idx); in zend_jit_trace_allocate_registers()
3033 flags[j] = ZREG_LOAD; in zend_jit_trace_allocate_registers()
3045 zend_jit_close_var(stack, i, start, end, flags, idx-1); in zend_jit_trace_allocate_registers()
3065 flags[j] = ZREG_LOAD; in zend_jit_trace_allocate_registers()
3087 flags[i] &= ~ZREG_LAST_USE; in zend_jit_trace_allocate_registers()
3096 flags[i] &= ~ZREG_LAST_USE; in zend_jit_trace_allocate_registers()
3098 zend_jit_close_var(stack, i, start, end, flags, idx); in zend_jit_trace_allocate_registers()
3105 zend_jit_close_var(stack, i, start, end, flags, idx); in zend_jit_trace_allocate_registers()
3112 zend_jit_close_var(stack, i, start, end, flags, idx); in zend_jit_trace_allocate_registers()
3130 if ((flags[i] & ZREG_LOAD) && in zend_jit_trace_allocate_registers()
3131 (flags[i] & ZREG_LAST_USE) && in zend_jit_trace_allocate_registers()
3139 list[j].flags = flags[i]; in zend_jit_trace_allocate_registers()
3174 list[j].flags = 0; in zend_jit_trace_allocate_registers()
3354 intervals[i]->flags |= ZREG_LOAD; in zend_jit_trace_allocate_registers()
3371 intervals[def]->flags |= ZREG_LOAD; in zend_jit_trace_allocate_registers()
3372 if ((intervals[def]->flags & ZREG_LAST_USE) in zend_jit_trace_allocate_registers()
3380 intervals[def]->flags |= ZREG_LOAD; in zend_jit_trace_allocate_registers()
3382 intervals[use]->flags |= ZREG_STORE; in zend_jit_trace_allocate_registers()
3393 intervals[use]->flags = ZREG_LOAD; in zend_jit_trace_allocate_registers()
3405 intervals[use]->flags |= ZREG_STORE; in zend_jit_trace_allocate_registers()
3417 && !(intervals[i]->flags & (ZREG_LOAD|ZREG_STORE))) { in zend_jit_trace_allocate_registers()
3418 intervals[i]->flags |= ZREG_STORE; in zend_jit_trace_allocate_registers()
3567 uint32_t flags = zend_jit_traces[trace_num].exit_info[exit_num].flags; in zend_jit_trace_exit_needs_deoptimization() local
3571 …if (opline || (flags & (ZEND_JIT_EXIT_RESTORE_CALL|ZEND_JIT_EXIT_FREE_OP1|ZEND_JIT_EXIT_FREE_OP2))… in zend_jit_trace_exit_needs_deoptimization()
3581 uint32_t flags, in zend_jit_trace_deoptimization() argument
3629 || (flags & (ZEND_JIT_EXIT_RESTORE_CALL|ZEND_JIT_EXIT_FREE_OP1|ZEND_JIT_EXIT_FREE_OP2)))) { in zend_jit_trace_deoptimization()
3672 &&!zend_jit_escape_if_undef_r0(Dst, i, flags, opline)) { in zend_jit_trace_deoptimization()
3683 if (flags & ZEND_JIT_EXIT_RESTORE_CALL) { in zend_jit_trace_deoptimization()
3689 if (flags & ZEND_JIT_EXIT_FREE_OP2) { in zend_jit_trace_deoptimization()
3697 if (flags & ZEND_JIT_EXIT_FREE_OP1) { in zend_jit_trace_deoptimization()
3705 if (flags & (ZEND_JIT_EXIT_FREE_OP1|ZEND_JIT_EXIT_FREE_OP2)) { in zend_jit_trace_deoptimization()
3711 if ((flags & ZEND_JIT_EXIT_METHOD_CALL) && !polymorphic_side_trace) { in zend_jit_trace_deoptimization()
3998 (zend_jit_traces[parent_trace].exit_info[exit_num].flags & ZEND_JIT_EXIT_METHOD_CALL); in zend_jit_trace()
4166 zend_jit_traces[parent_trace].exit_info[exit_num].flags, in zend_jit_trace()
4179 && (ra[i]->flags & ZREG_LOAD) != 0 in zend_jit_trace()
4215 if (ival->flags & ZREG_LOAD) { in zend_jit_trace()
4231 } else if (ival->flags & ZREG_STORE) { in zend_jit_trace()
4266 if (ra && ra[i] && (ra[i]->flags & ZREG_LOAD) != 0) { in zend_jit_trace()
5459 (op_array_ssa->cfg.flags & ZEND_FUNC_INDIRECT_VAR_ACCESS) != 0, may_throw)) { in zend_jit_trace()
6350 ra[ssa_op->result_def]->flags & ZREG_STORE); in zend_jit_trace()
6405 uint8_t flags = ra[ssa_op->op1_def]->flags & ZREG_STORE; in zend_jit_trace() local
6416 flags |= ZREG_LOAD; in zend_jit_trace()
6420 SET_STACK_REG_EX(stack, EX_VAR_TO_NUM(opline->op1.var), ra[ssa_op->op1_def]->reg, flags); in zend_jit_trace()
6454 uint8_t flags = ra[ssa_op->op2_def]->flags & ZREG_STORE; in zend_jit_trace() local
6460 flags |= ZREG_LOAD; in zend_jit_trace()
6464 SET_STACK_REG_EX(stack, EX_VAR_TO_NUM(opline->op2.var), ra[ssa_op->op2_def]->reg, flags); in zend_jit_trace()
6507 ra[ssa_op->op1_def]->flags & ZREG_STORE); in zend_jit_trace()
6536 ra[ssa_op->result_def]->flags & ZREG_STORE); in zend_jit_trace()
6558 ra[ssa_op->op1_def]->flags & ZREG_STORE); in zend_jit_trace()
6641 if (ra[j] && (ra[j]->flags & ZREG_LOAD) != 0) { in zend_jit_trace()
6681 if (ra[j] && (ra[j]->flags & ZREG_LOAD) != 0) { in zend_jit_trace()
6863 t->flags |= ZEND_JIT_TRACE_USES_INITIAL_IP; in zend_jit_trace()
6876 && (ra[phi->ssa_var]->flags & (ZREG_LOAD|ZREG_STORE)) == 0 in zend_jit_trace()
6877 && (ra[phi->sources[1]]->flags & (ZREG_LOAD|ZREG_STORE)) == 0) { in zend_jit_trace()
6886 if ((t->flags & ZEND_JIT_TRACE_USES_INITIAL_IP) in zend_jit_trace()
6893 t->flags |= ZEND_JIT_TRACE_CHECK_INTERRUPT; in zend_jit_trace()
6895 if (!(t->flags & ZEND_JIT_TRACE_LOOP)) { in zend_jit_trace()
6898 t->flags |= ZEND_JIT_TRACE_LOOP; in zend_jit_trace()
6901 if (!(t->flags & ZEND_JIT_TRACE_USES_INITIAL_IP) in zend_jit_trace()
6958 if ((zend_jit_traces[t->link].flags & ZEND_JIT_TRACE_USES_INITIAL_IP) in zend_jit_trace()
6963 t->flags |= ZEND_JIT_TRACE_USES_INITIAL_IP; in zend_jit_trace()
6966 && (zend_jit_traces[t->link].flags & ZEND_JIT_TRACE_CHECK_INTERRUPT) in zend_jit_trace()
6968 if (!(zend_jit_traces[t->link].flags & ZEND_JIT_TRACE_USES_INITIAL_IP)) { in zend_jit_trace()
7074 jit_extension->func_info.flags &= ZEND_FUNC_JIT_ON_FIRST_EXEC in zend_jit_trace()
7119 zend_jit_traces[trace_num].exit_info[exit_num].flags, in zend_jit_trace_exit_to_vm()
7174 t->flags = 0; in zend_jit_compile_root_trace()
7552 if (t->exit_info[i].flags & ZEND_JIT_EXIT_TO_VM) { in zend_jit_dump_exit_info()
7555 if (t->exit_info[i].flags & ZEND_JIT_EXIT_RESTORE_CALL) { in zend_jit_dump_exit_info()
7558 …if (t->exit_info[i].flags & (ZEND_JIT_EXIT_POLYMORPHISM|ZEND_JIT_EXIT_METHOD_CALL|ZEND_JIT_EXIT_CL… in zend_jit_dump_exit_info()
7561 if (t->exit_info[i].flags & ZEND_JIT_EXIT_FREE_OP1) { in zend_jit_dump_exit_info()
7564 if (t->exit_info[i].flags & ZEND_JIT_EXIT_FREE_OP2) { in zend_jit_dump_exit_info()
7752 …if (!(zend_jit_traces[trace_num].exit_info[exit_num].flags & (ZEND_JIT_EXIT_JITED|ZEND_JIT_EXIT_BL… in zend_jit_blacklist_trace_exit()
7767 zend_jit_traces[trace_num].exit_info[exit_num].flags |= ZEND_JIT_EXIT_BLACKLISTED; in zend_jit_blacklist_trace_exit()
7819 …if (zend_jit_traces[parent_num].exit_info[exit_num].flags & (ZEND_JIT_EXIT_JITED|ZEND_JIT_EXIT_BLA… in zend_jit_compile_side_trace()
7839 t->flags = 0; in zend_jit_compile_side_trace()
7899 zend_jit_traces[parent_num].exit_info[exit_num].flags |= ZEND_JIT_EXIT_JITED; in zend_jit_compile_side_trace()
7953 …if (zend_jit_traces[parent_num].exit_info[exit_num].flags & (ZEND_JIT_EXIT_JITED|ZEND_JIT_EXIT_BLA… in zend_jit_trace_hot_side()
7979 …if ((zend_jit_traces[parent_num].exit_info[exit_num].flags & (ZEND_JIT_EXIT_METHOD_CALL|ZEND_JIT_E… in zend_jit_trace_hot_side()
7980 || ((zend_jit_traces[parent_num].exit_info[exit_num].flags & ZEND_JIT_EXIT_POLYMORPHISM) in zend_jit_trace_hot_side()
7983 is_megamorphic = zend_jit_traces[parent_num].exit_info[exit_num].flags & in zend_jit_trace_hot_side()
8101 if (t->exit_info[exit_num].flags & ZEND_JIT_EXIT_RESTORE_CALL) { in zend_jit_trace_exit()
8162 && !(t->exit_info[exit_num].flags & ZEND_JIT_EXIT_FREE_OP1) in zend_jit_trace_exit()
8172 if (t->exit_info[exit_num].flags & ZEND_JIT_EXIT_FREE_OP2) { in zend_jit_trace_exit()
8180 if (t->exit_info[exit_num].flags & ZEND_JIT_EXIT_FREE_OP1) { in zend_jit_trace_exit()
8190 if (t->exit_info[exit_num].flags & (ZEND_JIT_EXIT_FREE_OP1|ZEND_JIT_EXIT_FREE_OP2)) { in zend_jit_trace_exit()
8195 if (t->exit_info[exit_num].flags & ZEND_JIT_EXIT_METHOD_CALL) { in zend_jit_trace_exit()
8213 } else if (t->exit_info[exit_num].flags & (ZEND_JIT_EXIT_JITED|ZEND_JIT_EXIT_BLACKLISTED)) { in zend_jit_trace_exit()
8233 if (t->exit_info[exit_num].flags & ZEND_JIT_EXIT_INVALIDATE) { in zend_jit_trace_exit()
8274 if (t->exit_info[exit_num].flags & ZEND_JIT_EXIT_TO_VM) { in zend_jit_trace_exit()
8336 jit_extension->func_info.flags = ZEND_FUNC_JIT_ON_HOT_TRACE; in zend_jit_setup_hot_trace_counters()
8358 if (cfg.blocks[i].flags & ZEND_BB_REACHABLE) { in zend_jit_setup_hot_trace_counters()
8359 if (cfg.blocks[i].flags & ZEND_BB_LOOP_HEADER) { in zend_jit_setup_hot_trace_counters()