Lines Matching refs:ssa

329 static void zend_dump_ssa_var_info(const zend_ssa *ssa, int ssa_var_num, uint32_t dump_flags)  in zend_dump_ssa_var_info()  argument
332 ssa->var_info[ssa_var_num].type, in zend_dump_ssa_var_info()
333 ssa->var_info[ssa_var_num].ce, in zend_dump_ssa_var_info()
334 ssa->var_info[ssa_var_num].ce ? in zend_dump_ssa_var_info()
335 ssa->var_info[ssa_var_num].is_instanceof : 0, in zend_dump_ssa_var_info()
339 static void zend_dump_ssa_var(const zend_op_array *op_array, const zend_ssa *ssa, int ssa_var_num, … in zend_dump_ssa_var() argument
348 if (ssa_var_num >= 0 && ssa->vars) { in zend_dump_ssa_var()
349 if (ssa->vars[ssa_var_num].no_val) { in zend_dump_ssa_var()
352 if (ssa->vars[ssa_var_num].escape_state == ESCAPE_STATE_NO_ESCAPE) { in zend_dump_ssa_var()
355 if (ssa->var_info) { in zend_dump_ssa_var()
356 zend_dump_ssa_var_info(ssa, ssa_var_num, dump_flags); in zend_dump_ssa_var()
357 if (ssa->var_info[ssa_var_num].has_range) { in zend_dump_ssa_var()
358 zend_dump_range(&ssa->var_info[ssa_var_num].range); in zend_dump_ssa_var()
364 static void zend_dump_type_constraint(const zend_op_array *op_array, const zend_ssa *ssa, const zen… in zend_dump_type_constraint() argument
370 static void zend_dump_range_constraint(const zend_op_array *op_array, const zend_ssa *ssa, const ze… in zend_dump_range_constraint() argument
384 …zend_dump_ssa_var(op_array, ssa, r->min_ssa_var, (r->min_var < op_array->last_var ? IS_CV : 0), r-… in zend_dump_range_constraint()
399 …zend_dump_ssa_var(op_array, ssa, r->max_ssa_var, (r->max_var < op_array->last_var ? IS_CV : 0), r-… in zend_dump_range_constraint()
418 const zend_ssa *ssa = NULL; in zend_dump_op() local
421 ssa = (const zend_ssa*)data; in zend_dump_op()
429 if (!ssa || !ssa->ops || ssa->ops[opline - op_array->opcodes].result_use < 0) { in zend_dump_op()
431 if (ssa && ssa->ops && ssa->ops[opline - op_array->opcodes].result_def >= 0) { in zend_dump_op()
432 int ssa_var_num = ssa->ops[opline - op_array->opcodes].result_def; in zend_dump_op()
433 …zend_dump_ssa_var(op_array, ssa, ssa_var_num, opline->result_type, EX_VAR_TO_NUM(opline->result.va… in zend_dump_op()
599 if (ssa && ssa->ops) { in zend_dump_op()
600 int ssa_var_num = ssa->ops[opline - op_array->opcodes].op1_use; in zend_dump_op()
603 …zend_dump_ssa_var(op_array, ssa, ssa_var_num, opline->op1_type, EX_VAR_TO_NUM(opline->op1.var), du… in zend_dump_op()
604 } else if (ssa->ops[opline - op_array->opcodes].op1_def < 0) { in zend_dump_op()
612 if (ssa && ssa->ops) { in zend_dump_op()
613 int ssa_var_num = ssa->ops[opline - op_array->opcodes].op1_def; in zend_dump_op()
616 …zend_dump_ssa_var(op_array, ssa, ssa_var_num, opline->op1_type, EX_VAR_TO_NUM(opline->op1.var), du… in zend_dump_op()
656 if (ssa && ssa->ops) { in zend_dump_op()
657 int ssa_var_num = ssa->ops[opline - op_array->opcodes].op2_use; in zend_dump_op()
660 …zend_dump_ssa_var(op_array, ssa, ssa_var_num, opline->op2_type, EX_VAR_TO_NUM(opline->op2.var), du… in zend_dump_op()
661 } else if (ssa->ops[opline - op_array->opcodes].op2_def < 0) { in zend_dump_op()
669 if (ssa && ssa->ops) { in zend_dump_op()
670 int ssa_var_num = ssa->ops[opline - op_array->opcodes].op2_def; in zend_dump_op()
673 …zend_dump_ssa_var(op_array, ssa, ssa_var_num, opline->op2_type, EX_VAR_TO_NUM(opline->op2.var), du… in zend_dump_op()
700 } else if (ssa && ssa->ops && ssa->ops[opline - op_array->opcodes].result_use >= 0) { in zend_dump_op()
702 if (ssa && ssa->ops) { in zend_dump_op()
703 int ssa_var_num = ssa->ops[opline - op_array->opcodes].result_use; in zend_dump_op()
706 …zend_dump_ssa_var(op_array, ssa, ssa_var_num, opline->result_type, EX_VAR_TO_NUM(opline->result.va… in zend_dump_op()
712 if (ssa && ssa->ops) { in zend_dump_op()
713 int ssa_var_num = ssa->ops[opline - op_array->opcodes].result_def; in zend_dump_op()
716 …zend_dump_ssa_var(op_array, ssa, ssa_var_num, opline->result_type, EX_VAR_TO_NUM(opline->result.va… in zend_dump_op()
816 …header(const zend_cfg *cfg, const zend_op_array *op_array, const zend_ssa *ssa, int n, uint32_t du… in zend_dump_block_header() argument
819 if (ssa && ssa->blocks && ssa->blocks[n].phis) { in zend_dump_block_header()
820 zend_ssa_phi *p = ssa->blocks[n].phis; in zend_dump_block_header()
826 zend_dump_ssa_var(op_array, ssa, p->ssa_var, 0, p->var, dump_flags); in zend_dump_block_header()
833 zend_dump_ssa_var(op_array, ssa, p->sources[j], 0, p->var, dump_flags); in zend_dump_block_header()
838 zend_dump_ssa_var(op_array, ssa, p->sources[0], 0, p->var, dump_flags); in zend_dump_block_header()
841 zend_dump_range_constraint(op_array, ssa, &p->constraint.range, dump_flags); in zend_dump_block_header()
843 zend_dump_type_constraint(op_array, ssa, &p->constraint.type, dump_flags); in zend_dump_block_header()
875 const zend_ssa *ssa = NULL; in zend_dump_op_array() local
886 ssa = (const zend_ssa*)data; in zend_dump_op_array()
903 if (ssa) { in zend_dump_op_array()
904 fprintf(stderr, ", ssa_vars=%d", ssa->vars_count); in zend_dump_op_array()
977 if (ssa && ssa->var_info) { in zend_dump_op_array()
980 zend_dump_ssa_var(op_array, ssa, i, IS_CV, i, dump_flags); in zend_dump_op_array()
995 zend_dump_block_header(cfg, op_array, ssa, n, dump_flags); in zend_dump_op_array()
1146 void zend_dump_ssa_variables(const zend_op_array *op_array, const zend_ssa *ssa, uint32_t dump_flag… in zend_dump_ssa_variables() argument
1150 if (ssa->vars) { in zend_dump_ssa_variables()
1155 for (j = 0; j < ssa->vars_count; j++) { in zend_dump_ssa_variables()
1157 zend_dump_ssa_var(op_array, ssa, j, IS_CV, ssa->vars[j].var, dump_flags); in zend_dump_ssa_variables()
1158 if (ssa->vars[j].scc >= 0) { in zend_dump_ssa_variables()
1159 if (ssa->vars[j].scc_entry) { in zend_dump_ssa_variables()
1164 fprintf(stderr, "SCC=%d", ssa->vars[j].scc); in zend_dump_ssa_variables()
1206 void zend_dump_phi_placement(const zend_op_array *op_array, const zend_ssa *ssa) in zend_dump_phi_placement() argument
1209 zend_ssa_block *ssa_blocks = ssa->blocks; in zend_dump_phi_placement()
1210 int blocks_count = ssa->cfg.blocks_count; in zend_dump_phi_placement()