Lines Matching refs:ssa

146 …na, const zend_script *script, const zend_op_array *op_array, uint32_t build_flags, zend_ssa *ssa);
147 … zend_ssa_compute_use_def_chains(zend_arena **arena, const zend_op_array *op_array, zend_ssa *ssa);
148 int zend_ssa_unlink_use_chain(zend_ssa *ssa, int op, int var);
150 void zend_ssa_remove_predecessor(zend_ssa *ssa, int from, int to);
151 void zend_ssa_remove_instr(zend_ssa *ssa, zend_op *opline, zend_ssa_op *ssa_op);
152 void zend_ssa_remove_phi(zend_ssa *ssa, zend_ssa_phi *phi);
153 void zend_ssa_remove_uses_of_var(zend_ssa *ssa, int var_num);
154 void zend_ssa_remove_block(zend_op_array *op_array, zend_ssa *ssa, int b);
155 void zend_ssa_rename_var_uses(zend_ssa *ssa, int old_var, int new_var, zend_bool update_types);
165 static zend_always_inline void zend_ssa_remove_result_def(zend_ssa *ssa, zend_ssa_op *ssa_op) in zend_ssa_remove_result_def() argument
167 zend_ssa_var *var = &ssa->vars[ssa_op->result_def]; in zend_ssa_remove_result_def()
172 static zend_always_inline void zend_ssa_remove_op1_def(zend_ssa *ssa, zend_ssa_op *ssa_op) in zend_ssa_remove_op1_def() argument
174 zend_ssa_var *var = &ssa->vars[ssa_op->op1_def]; in zend_ssa_remove_op1_def()
179 static zend_always_inline void zend_ssa_remove_op2_def(zend_ssa *ssa, zend_ssa_op *ssa_op) in zend_ssa_remove_op2_def() argument
181 zend_ssa_var *var = &ssa->vars[ssa_op->op2_def]; in zend_ssa_remove_op2_def()
200 static zend_always_inline zend_ssa_phi* zend_ssa_next_use_phi(const zend_ssa *ssa, int var, const z… in zend_ssa_next_use_phi() argument
206 for (j = 0; j < ssa->cfg.blocks[p->block].predecessors_count; j++) { in zend_ssa_next_use_phi()
232 static zend_always_inline void zend_ssa_rename_defs_of_instr(zend_ssa *ssa, zend_ssa_op *ssa_op) { in zend_ssa_rename_defs_of_instr() argument
236 zend_ssa_rename_var_uses(ssa, ssa_op->op1_def, ssa_op->op1_use, 1); in zend_ssa_rename_defs_of_instr()
238 ssa->vars[ssa_op->op1_def].definition = -1; in zend_ssa_rename_defs_of_instr()
243 zend_ssa_rename_var_uses(ssa, ssa_op->op2_def, ssa_op->op2_use, 1); in zend_ssa_rename_defs_of_instr()
245 ssa->vars[ssa_op->op2_def].definition = -1; in zend_ssa_rename_defs_of_instr()
250 zend_ssa_rename_var_uses(ssa, ssa_op->result_def, ssa_op->result_use, 1); in zend_ssa_rename_defs_of_instr()
252 ssa->vars[ssa_op->result_def].definition = -1; in zend_ssa_rename_defs_of_instr()
258 ((phi)->pi >= 0 ? 1 : (ssa->cfg.blocks[(phi)->block].predecessors_count))
263 int _var_num = (var) - ssa->vars, next; \
265 next = zend_ssa_next_use(ssa->ops, _var_num, use);
271 int _var_num = (var) - ssa->vars; \
274 next_phi = zend_ssa_next_use_phi(ssa, _var_num, phi);
291 for (_i = 0; _i < ssa->cfg.blocks_count; _i++) { \
292 phi = ssa->blocks[_i].phis; \
301 for (_i = 0; _i < ssa->cfg.blocks_count; _i++) { \
302 (block) = &ssa->cfg.blocks[_i]; \