/PHP-8.3/Zend/Optimizer/ |
H A D | ssa_integrity.c | 93 const zend_ssa_var *ssa_var = &ssa->vars[var]; in is_defined() local 94 return ssa_var->definition >= 0 || ssa_var->definition_phi || var < op_array->last_var; in is_defined() 146 if (var->definition_phi->ssa_var != i) { in ssa_verify_integrity() 191 FAIL("var " VARFMT " not in phi sources of %d\n", VAR(i), phi->ssa_var); in ssa_verify_integrity() 336 FAIL(VARFMT " negative source\n", VAR(phi->ssa_var)); in ssa_verify_integrity() 339 FAIL(VARFMT " not in phi use chain of %d\n", VAR(phi->ssa_var), source); in ssa_verify_integrity() 341 if (ssa->vars[source].var != ssa->vars[phi->ssa_var].var) { in ssa_verify_integrity() 342 FAIL(VARFMT " source of phi for " VARFMT "\n", VAR(source), VAR(phi->ssa_var)); in ssa_verify_integrity() 349 " at %d despite earlier use\n", VAR(source), VAR(phi->ssa_var), j); in ssa_verify_integrity() 354 if (ssa->vars[phi->ssa_var].definition_phi != phi) { in ssa_verify_integrity() [all …]
|
H A D | scdf.c | 76 zend_bitset_excl(scdf->phi_var_worklist, phi->ssa_var); in scdf_mark_edge_feasible() 151 zend_bitset_excl(scdf->phi_var_worklist, phi->ssa_var); in scdf_solve() 198 zend_ssa_var *ssa_var = &scdf->ssa->vars[var]; in is_live_loop_var_free() local 200 if (ssa_var->definition >= 0) { in is_live_loop_var_free() 201 def_block = scdf->ssa->cfg.map[ssa_var->definition]; in is_live_loop_var_free() 203 def_block = ssa_var->definition_phi->block; in is_live_loop_var_free() 232 zend_ssa_remove_uses_of_var(ssa, phi->ssa_var); in cleanup_loop_var_free_block()
|
H A D | zend_ssa.c | 111 phi->ssa_var = -1; in add_pi() 811 if (phi->ssa_var < 0) { in zend_ssa_rename() 812 phi->ssa_var = ssa_vars_count; in zend_ssa_rename() 816 var[phi->var] = phi->ssa_var; in zend_ssa_rename() 852 if (p->ssa_var < 0) { in zend_ssa_rename() 853 p->ssa_var = ssa_vars_count; in zend_ssa_rename() 881 q->sources[j] = p->ssa_var; in zend_ssa_rename() 1011 phi->ssa_var = -1; in zend_build_ssa() 1111 ssa_vars[phi->ssa_var].var = phi->var; in zend_ssa_compute_use_def_chains() 1383 ZEND_ASSERT(phi->ssa_var >= 0); in zend_ssa_remove_phi() [all …]
|
H A D | dce.c | 465 if (source == phi->ssa_var) { in get_common_phi_source() 487 zend_ssa_rename_var_uses(ssa, phi->ssa_var, common_source, 1); in try_remove_trivial_phi() 552 && may_be_refcounted(ssa->var_info[phi->ssa_var].type)) { in dce_optimize_op_array() 553 zend_bitset_excl(ctx.phi_dead, phi->ssa_var); in dce_optimize_op_array() 650 if (zend_bitset_in(ctx.phi_dead, phi->ssa_var)) { in dce_optimize_op_array() 651 zend_ssa_remove_uses_of_var(ssa, phi->ssa_var); in dce_optimize_op_array()
|
H A D | scdf.h | 64 zend_bitset_incl(scdf->phi_var_worklist, phi->ssa_var); in scdf_add_to_worklist()
|
H A D | zend_optimizer.c | 1396 int ssa_var = ssa_op->result_def; in needs_live_range() local 1397 if (ssa_var < 0) { in needs_live_range() 1405 if (func_info->ssa.vars[ssa_var].phi_use_chain) { in needs_live_range() 1406 ssa_var = func_info->ssa.vars[ssa_var].phi_use_chain->ssa_var; in needs_live_range() 1409 uint32_t type = func_info->ssa.var_info[ssa_var].type; in needs_live_range()
|
H A D | zend_ssa.h | 68 int ssa_var; /* SSA variable index */ member
|
H A D | zend_inference.c | 160 MACRO(p->ssa_var); \ 194 CHECK_SCC_VAR(p->ssa_var); 357 var2 = phi->ssa_var; in zend_scc_next() 371 var2 = phi->ssa_var; in zend_scc_next() 1155 p->ssa_var, in zend_inference_calc_range() 1156 ssa->var_info[p->ssa_var].range.min, in zend_inference_calc_range() 1157 ssa->var_info[p->ssa_var].range.max, in zend_inference_calc_range() 1937 ADD_SCC_VAR(p->ssa_var); in zend_infer_ranges() 2033 zend_bitset_incl(worklist, p->ssa_var); in add_usages() 4294 type = ssa->var_info[phi->ssa_var].type; in can_convert_to_double() [all …]
|
H A D | sccp.c | 1992 ZEND_ASSERT(phi->ssa_var >= 0); in sccp_visit_phi() 1993 if (!IS_BOT(&ctx->values[phi->ssa_var])) { in sccp_visit_phi() 2006 …join_phi_values(&result, &ctx->values[phi->sources[0]], ssa->vars[phi->ssa_var].escape_state != ES… in sccp_visit_phi() 2016 …join_phi_values(&result, &ctx->values[phi->sources[i]], ssa->vars[phi->ssa_var].escape_state != ES… in sccp_visit_phi() 2028 set_value(scdf, ctx, phi->ssa_var, &result); in sccp_visit_phi()
|
H A D | dfa_pass.c | 607 ssa, phi->ssa_var, phi->sources[0], /* update_types */ 0); in replace_predecessor() 720 int ssa_var = ssa->ops[fe_fetch_block->start + fe_fetch_block->len - 1].op2_def; in zend_ssa_unlink_block() local 721 if (ssa_var >= 0) { in zend_ssa_unlink_block() 722 zend_ssa_remove_uses_of_var(ssa, ssa_var); in zend_ssa_unlink_block()
|
H A D | zend_dump.c | 886 zend_dump_ssa_var(op_array, ssa, p->ssa_var, 0, p->var, dump_flags); in zend_dump_block_header()
|
/PHP-8.3/ext/opcache/jit/ |
H A D | zend_jit_trace.c | 744 phi->ssa_var = ssa_vars_count; in zend_jit_trace_add_phis() 781 phi->ssa_var = ssa_vars_count; in zend_jit_trace_add_call_phis() 813 phi->ssa_var = ssa_vars_count; in zend_jit_trace_add_ret_phis() 832 var = tssa->vars[ssa_var].phi_use_chain->ssa_var; in zend_jit_trace_copy_ssa_var_info() 834 var = ssa_var; in zend_jit_trace_copy_ssa_var_info() 917 tssa->var_info[ssa_var].range.min = MAX(tssa->var_info[ssa_var].range.min, info->range.min); in zend_jit_trace_copy_ssa_var_range() 2804 start[phi->ssa_var] = 0; in zend_jit_trace_allocate_registers() 3153 list[j].ssa_var = i; in zend_jit_trace_allocate_registers() 3188 list[j].ssa_var = - 1; in zend_jit_trace_allocate_registers() 3382 int def = phi->ssa_var; in zend_jit_trace_allocate_registers() [all …]
|
H A D | zend_jit.c | 198 if (!ssa->vars[phi->ssa_var].no_val) { in zend_ssa_is_last_use() 1389 ival->ssa_var = var; in zend_jit_add_range() 1520 ival->ssa_var = current->ssa_var; in zend_jit_split_interval() 1695 src = intervals[dst]->hint->ssa_var; in zend_jit_add_hint() 1698 dst = intervals[dst]->hint->ssa_var; in zend_jit_add_hint() 1861 zend_bitset_excl(live, phi->ssa_var); in zend_jit_compute_liveness() 2111 ssa->ops + current->range.start, ssa, current->ssa_var, it->ssa_var)) { in zend_jit_try_allocate_free_reg() 2430 if (ival->hint->ssa_var >= 0) { in zend_jit_dump_lifetime_interval() 2522 intervals[ival->ssa_var] = ival; in zend_jit_allocate_registers() 2603 if (intervals[phi->ssa_var] && in zend_jit_allocate_registers() [all …]
|
H A D | zend_jit.h | 175 int ssa_var; member
|
H A D | zend_jit_internal.h | 523 int32_t ssa_var; member 534 (_stack)[_slot].ssa_var 546 (_stack)[_slot].ssa_var = _ssa_var; \
|
H A D | zend_jit_arm64.dasc | 15106 if (!ssa->vars[phi->ssa_var].no_val) {
|
H A D | zend_jit_x86.dasc | 16049 if (!ssa->vars[phi->ssa_var].no_val) {
|