Lines Matching refs:ssa

138 …pt *script, const zend_op_array *op_array, uint32_t build_flags, zend_ssa *ssa, uint32_t *func_fla…
139 … zend_ssa_compute_use_def_chains(zend_arena **arena, const zend_op_array *op_array, zend_ssa *ssa);
140 int zend_ssa_unlink_use_chain(zend_ssa *ssa, int op, int var);
142 void zend_ssa_remove_predecessor(zend_ssa *ssa, int from, int to);
143 void zend_ssa_remove_instr(zend_ssa *ssa, zend_op *opline, zend_ssa_op *ssa_op);
144 void zend_ssa_remove_phi(zend_ssa *ssa, zend_ssa_phi *phi);
145 void zend_ssa_remove_uses_of_var(zend_ssa *ssa, int var_num);
146 void zend_ssa_remove_block(zend_op_array *op_array, zend_ssa *ssa, int b);
147 void zend_ssa_rename_var_uses(zend_ssa *ssa, int old_var, int new_var, zend_bool update_types);
157 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
159 zend_ssa_var *var = &ssa->vars[ssa_op->result_def]; in zend_ssa_remove_result_def()
164 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
166 zend_ssa_var *var = &ssa->vars[ssa_op->op1_def]; in zend_ssa_remove_op1_def()
171 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
173 zend_ssa_var *var = &ssa->vars[ssa_op->op2_def]; in zend_ssa_remove_op2_def()
192 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
198 for (j = 0; j < ssa->cfg.blocks[p->block].predecessors_count; j++) { in zend_ssa_next_use_phi()
221 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
225 zend_ssa_rename_var_uses(ssa, ssa_op->op1_def, ssa_op->op1_use, 1); in zend_ssa_rename_defs_of_instr()
227 ssa->vars[ssa_op->op1_def].definition = -1; in zend_ssa_rename_defs_of_instr()
232 zend_ssa_rename_var_uses(ssa, ssa_op->op2_def, ssa_op->op2_use, 1); in zend_ssa_rename_defs_of_instr()
234 ssa->vars[ssa_op->op2_def].definition = -1; in zend_ssa_rename_defs_of_instr()
239 zend_ssa_rename_var_uses(ssa, ssa_op->result_def, ssa_op->result_use, 1); in zend_ssa_rename_defs_of_instr()
241 ssa->vars[ssa_op->result_def].definition = -1; in zend_ssa_rename_defs_of_instr()
247 ((phi)->pi >= 0 ? 1 : (ssa->cfg.blocks[(phi)->block].predecessors_count))
252 int _var_num = (var) - ssa->vars, next; \
254 next = zend_ssa_next_use(ssa->ops, _var_num, use);
260 int _var_num = (var) - ssa->vars; \
263 next_phi = zend_ssa_next_use_phi(ssa, _var_num, phi);
280 for (_i = 0; _i < ssa->cfg.blocks_count; _i++) { \
281 phi = ssa->blocks[_i].phis; \
290 for (_i = 0; _i < ssa->cfg.blocks_count; _i++) { \
291 (block) = &ssa->cfg.blocks[_i]; \