Home
last modified time | relevance | path

Searched refs:ssa_op (Results 1 – 18 of 18) sorted by relevance

/PHP-8.0/ext/opcache/Optimizer/
H A Dzend_ssa.h179 ssa_op->op1_def = -1; in zend_ssa_remove_op1_def()
186 ssa_op->op2_def = -1; in zend_ssa_remove_op2_def()
193 ssa_op += use; in END_EXTERN_C()
224 return ssa_op->op1_use == var && ssa_op->op2_use != var; in zend_ssa_is_no_val_use()
227 return ssa_op->op2_use == var && ssa_op->op1_use != var; in zend_ssa_is_no_val_use()
232 return ssa_op->op1_use != var && ssa_op->op2_use != var; in zend_ssa_is_no_val_use()
241 zend_ssa_rename_var_uses(ssa, ssa_op->op1_def, ssa_op->op1_use, 1); in zend_ssa_rename_defs_of_instr()
244 ssa_op->op1_def = -1; in zend_ssa_rename_defs_of_instr()
248 zend_ssa_rename_var_uses(ssa, ssa_op->op2_def, ssa_op->op2_use, 1); in zend_ssa_rename_defs_of_instr()
251 ssa_op->op2_def = -1; in zend_ssa_rename_defs_of_instr()
[all …]
H A Dssa_integrity.c48 || (ssa_op->op2_use == check) in is_used_by_op()
55 || (ssa_op->op2_def == check) in is_defined_by_op()
181 if (ssa_op->op1_use < 0 && ssa_op->op1_def < 0) { in ssa_verify_integrity()
185 if (ssa_op->op1_use >= 0 || ssa_op->op1_def >= 0) { in ssa_verify_integrity()
190 if (ssa_op->op2_use < 0 && ssa_op->op2_def < 0) { in ssa_verify_integrity()
194 if (ssa_op->op2_use >= 0 || ssa_op->op2_def >= 0) { in ssa_verify_integrity()
199 if (ssa_op->result_use < 0 && ssa_op->result_def < 0) { in ssa_verify_integrity()
203 if (ssa_op->result_use >= 0 || ssa_op->result_def >= 0) { in ssa_verify_integrity()
208 if (ssa_op->op1_use >= 0) { in ssa_verify_integrity()
221 if (ssa_op->op2_use >= 0) { in ssa_verify_integrity()
[all …]
H A Dzend_inference.h51 ssa_op->opN##_use >= 0 && \
52 ssa->var_info[ssa_op->opN##_use].has_range); \
73 ssa_op->opN##_use >= 0 && \
74 ssa->var_info[ssa_op->opN##_use].has_range) { \
75 return ssa->var_info[ssa_op->opN##_use].range.min; \
96 ssa_op->opN##_use >= 0 && \
97 ssa->var_info[ssa_op->opN##_use].has_range) { \
113 ssa_op->opN##_use >= 0 && \
114 ssa->var_info[ssa_op->opN##_use].has_range) { \
130 ssa_op->opN##_use >= 0 && \
[all …]
H A Ddce.c180 if (is_bad_mod(ssa, ssa_op->op1_use, ssa_op->op1_def)) { in may_have_side_effects()
211 return is_bad_mod(ssa, ssa_op->op1_use, ssa_op->op1_def); in may_have_side_effects()
213 return is_bad_mod(ssa, ssa_op->op1_use, ssa_op->op1_def) in may_have_side_effects()
217 if (is_bad_mod(ssa, ssa_op->op1_use, ssa_op->op1_def) in may_have_side_effects()
223 ssa_op++; in may_have_side_effects()
235 if (is_bad_mod(ssa, ssa_op->op1_use, ssa_op->op1_def) in may_have_side_effects()
285 if (!zend_ssa_is_no_val_use(opline, ssa_op, ssa_op->op1_use) in add_operands_to_worklists()
294 if (!zend_ssa_is_no_val_use(opline, ssa_op, ssa_op->op2_use) in add_operands_to_worklists()
402 if (!try_remove_var_def(ctx, ssa_op->op1_use, ssa_op->op1_use_chain, opline)) { in dce_instr()
481 if (ssa_op->op1_def >= 0 in may_break_varargs()
[all …]
H A Dzend_inference.c1195 if (ssa_op->op1_def == var || ssa_op->op2_def == var || ssa_op->result_def == var) { in zend_inference_propagate_range()
1213 ssa_op++; in zend_inference_propagate_range()
2233 ssa_op--; in _zend_update_type_info()
2328 COPY_SSA_OBJ_TYPE(ssa_op->op1_use, ssa_op->op1_def); in _zend_update_type_info()
2371 COPY_SSA_OBJ_TYPE(ssa_op->op1_use, ssa_op->op1_def); in _zend_update_type_info()
2621 COPY_SSA_OBJ_TYPE(ssa_op->op1_use, ssa_op->op1_def); in _zend_update_type_info()
2650 ssa_op++; in _zend_update_type_info()
2664 COPY_SSA_OBJ_TYPE(ssa_op->op1_use, ssa_op->op1_def); in _zend_update_type_info()
2677 ssa_op++; in _zend_update_type_info()
2692 ssa_op++; in _zend_update_type_info()
[all …]
H A Dsccp.c330 ssa_op->op2_use = -1; in try_replace_op1()
355 ZEND_ASSERT(ssa_op->result_def == (ssa_op + 1)->op2_use); in try_replace_op2()
1381 ssa_op++; in sccp_visit_instr()
1820 if (ssa_op->result_def < 0 || IS_BOT(&ctx->values[ssa_op->result_def])) { in sccp_visit_instr()
2237 if (ssa_op->op1_def >= 0 || ssa_op->op2_def >= 0) { in try_remove_definition()
2354 if ((ssa_op->op2_use >= 0 && !value_known(&ctx->values[ssa_op->op2_use])) in try_remove_definition()
2398 if (ssa_op->op2_use != ssa_op->op1_use) { in try_remove_definition()
2432 zend_ssa_rename_var_uses(ssa, ssa_op->op1_def, ssa_op->op1_use, 1); in try_remove_definition()
2490 if (ssa_op->op1_use != ssa_op->op2_use) { in replace_constant_operands()
2493 ssa_op->op2_use_chain = ssa_op->op1_use_chain; in replace_constant_operands()
[all …]
H A Dzend_ssa.c1226 zend_ssa_unlink_use_chain(ssa, ssa_op - ssa->ops, ssa_op->result_use); in zend_ssa_remove_instr()
1231 if (ssa_op->op1_use != ssa_op->op2_use) { in zend_ssa_remove_instr()
1232 zend_ssa_unlink_use_chain(ssa, ssa_op - ssa->ops, ssa_op->op1_use); in zend_ssa_remove_instr()
1234 ssa_op->op2_use_chain = ssa_op->op1_use_chain; in zend_ssa_remove_instr()
1236 ssa_op->op1_use = -1; in zend_ssa_remove_instr()
1240 zend_ssa_unlink_use_chain(ssa, ssa_op - ssa->ops, ssa_op->op2_use); in zend_ssa_remove_instr()
1241 ssa_op->op2_use = -1; in zend_ssa_remove_instr()
1381 ssa_op->op1_use = -1; in zend_ssa_remove_uses_of_var()
1552 ssa_op->res_use_chain = ssa_op->op1_use_chain; in zend_ssa_rename_var_uses()
1558 ssa_op->res_use_chain = ssa_op->op2_use_chain; in zend_ssa_rename_var_uses()
[all …]
H A Ddfa_pass.c376 if ((ssa_op->op1_def >= 0 && ssa->vars[ssa_op->op1_def].var == var) || in variable_defined_or_used_in_range()
377 (ssa_op->op2_def >= 0 && ssa->vars[ssa_op->op2_def].var == var) || in variable_defined_or_used_in_range()
378 (ssa_op->result_def >= 0 && ssa->vars[ssa_op->result_def].var == var) || in variable_defined_or_used_in_range()
379 (ssa_op->op1_use >= 0 && ssa->vars[ssa_op->op1_use].var == var) || in variable_defined_or_used_in_range()
380 (ssa_op->op2_use >= 0 && ssa->vars[ssa_op->op2_use].var == var) || in variable_defined_or_used_in_range()
381 (ssa_op->result_use >= 0 && ssa->vars[ssa_op->result_use].var == var) in variable_defined_or_used_in_range()
472 ssa_op->op1_use = -1; in zend_dfa_optimize_calls()
760 zend_ssa_op *ssa_op; in zend_dfa_optimize_jmps() local
880 ssa_op->op1_use = -1; in zend_dfa_optimize_jmps()
1129 zend_ssa_op *ssa_op; in zend_dfa_optimize_op_array() local
[all …]
H A Descape_analysis.c169 zend_ssa_op *ssa_op = ssa->ops + def; in is_allocation_def() local
172 if (ssa_op->result_def == var) { in is_allocation_def()
207 } else if (ssa_op->op1_def == var) { in is_allocation_def()
276 zend_ssa_op *ssa_op = ssa->ops + use; in is_escape_use() local
279 if (ssa_op->op1_use == var) { in is_escape_use()
334 ssa_op--; in is_escape_use()
337 || (ssa_op->op1_def >= 0 && ssa->vars[ssa_op->op1_def].alias)) { in is_escape_use()
348 if (ssa_op->op2_use == var) { in is_escape_use()
353 || (ssa_op->op1_def >= 0 && ssa->vars[ssa_op->op1_def].alias)) { in is_escape_use()
369 if (ssa_op->result_use == var) { in is_escape_use()
H A Dzend_dump.c414 if (!ssa_op || ssa_op->result_use < 0) { in zend_dump_op()
416 if (ssa_op && ssa_op->result_def >= 0) { in zend_dump_op()
583 if (ssa_op) { in zend_dump_op()
588 } else if (ssa_op->op1_def < 0) { in zend_dump_op()
596 if (ssa_op) { in zend_dump_op()
644 if (ssa_op) { in zend_dump_op()
657 if (ssa_op) { in zend_dump_op()
694 } else if (ssa_op && ssa_op->result_use >= 0) { in zend_dump_op()
696 if (ssa_op) { in zend_dump_op()
706 if (ssa_op) { in zend_dump_op()
[all …]
H A Dscdf.h40 struct _scdf_ctx *scdf, zend_op *opline, zend_ssa_op *ssa_op);
45 zend_op *opline, zend_ssa_op *ssa_op);
H A Dscdf.c125 zend_ssa_op *ssa_op = &ssa->ops[i]; in scdf_solve() local
128 ssa_op--; in scdf_solve()
130 scdf->handlers.visit_instr(scdf, opline, ssa_op); in scdf_solve()
135 scdf->handlers.mark_feasible_successors(scdf, block_num, block, opline, ssa_op); in scdf_solve()
H A Dzend_dump.h34 …ck *b, const zend_op *opline, uint32_t dump_flags, const zend_ssa *ssa, const zend_ssa_op *ssa_op);
H A Dzend_optimizer.c1207 zend_ssa_op *ssa_op = &ssa->ops[opline - op_array->opcodes]; in zend_redo_pass_two_ex() local
1358 zend_ssa_op *ssa_op = &func_info->ssa.ops[def_opline - op_array->opcodes]; in needs_live_range() local
1359 int ssa_var = ssa_op->result_def; in needs_live_range()
/PHP-8.0/ext/opcache/jit/
H A Dzend_jit_trace.c2582 && ssa_op->op2_use != ssa_op->op1_use in zend_jit_trace_allocate_registers()
2597 && ssa_op->result_use != ssa_op->op1_use in zend_jit_trace_allocate_registers()
2598 && ssa_op->result_use != ssa_op->op2_use in zend_jit_trace_allocate_registers()
2677 ssa_op++; in zend_jit_trace_allocate_registers()
2706 ssa_op++; in zend_jit_trace_allocate_registers()
3587 if ((ssa_op-1)->op1_def == ssa_op->op2_use) { in zend_jit_may_skip_comparison()
3588 ssa_op--; in zend_jit_may_skip_comparison()
3598 ssa_op--; in zend_jit_may_skip_comparison()
3612 if ((ssa_op-1)->op1_def == ssa_op->op1_use) { in zend_jit_may_skip_comparison()
3613 ssa_op--; in zend_jit_may_skip_comparison()
[all …]
H A Dzend_jit_x86.h261 #define OP_REG(ssa_op, op) \ argument
262 (ra && ssa_op->op >= 0 && ra[ssa_op->op] ? \
263 OP_REG_EX(ra[ssa_op->op]->reg, \
264 (ra[ssa_op->op]->flags & ZREG_STORE), \
265 (ra[ssa_op->op]->flags & ZREG_LOAD), \
266 zend_ival_is_last_use(ra[ssa_op->op], ssa_op - ssa->ops) \
301 OP_REG(ssa_op, _ssa_op))
H A Dzend_jit.c206 #define OP_RANGE(ssa_op, opN) \ argument
209 (ssa_op)->opN##_use >= 0 && \
541 res = ssa_op->op1_def; in zend_may_overflow()
556 res = ssa_op->op1_def; in zend_may_overflow()
570 res = ssa_op->result_def; in zend_may_overflow()
597 res = ssa_op->result_def; in zend_may_overflow()
624 res = ssa_op->result_def; in zend_may_overflow()
631 res = ssa_op->op1_def; in zend_may_overflow()
658 res = ssa_op->op1_def; in zend_may_overflow()
685 res = ssa_op->op1_def; in zend_may_overflow()
[all …]
H A Dzend_jit_x86.dasc9275 ssa_op++;
9342 ssa_op++;
9402 ssa_op++;
9415 ssa_op++;
9441 ssa_op++;
12059 && (ssa_op+1)->op1_use == ssa_op->result_def
13329 && (ssa_op+1)->op1_use == ssa_op->result_def
15636 if (def_var == ssa_op->result_def &&
15637 use_var == ssa_op->op1_use) {
16139 if (ssa_op == ssa->ops
[all …]

Completed in 114 milliseconds