Home
last modified time | relevance | path

Searched refs:zend_ssa (Results 1 – 24 of 24) sorted by relevance

/php-src/Zend/Optimizer/
H A Dzend_ssa.h143 } zend_ssa; typedef
150 void zend_ssa_unlink_use_chain(zend_ssa *ssa, int op, int var);
151 void zend_ssa_replace_use_chain(zend_ssa *ssa, int op, int new_op, int var);
153 void zend_ssa_remove_predecessor(zend_ssa *ssa, int from, int to);
154 void zend_ssa_remove_defs_of_instr(zend_ssa *ssa, zend_ssa_op *ssa_op);
155 void zend_ssa_remove_instr(zend_ssa *ssa, zend_op *opline, zend_ssa_op *ssa_op);
156 void zend_ssa_remove_phi(zend_ssa *ssa, zend_ssa_phi *phi);
157 void zend_ssa_remove_uses_of_var(zend_ssa *ssa, int var_num);
158 void zend_ssa_remove_block(zend_op_array *op_array, zend_ssa *ssa, int b);
159 void zend_ssa_rename_var_uses(zend_ssa *ssa, int old_var, int new_var, bool update_types);
[all …]
H A Dzend_dump.h37 … zend_basic_block *b, const zend_op *opline, uint32_t dump_flags, const zend_ssa *ssa, const zend_…
41 void zend_dump_phi_placement(const zend_op_array *op_array, const zend_ssa *ssa);
42 void zend_dump_ssa_variables(const zend_op_array *op_array, const zend_ssa *ssa, uint32_t dump_flag…
43 ZEND_API void zend_dump_ssa_var(const zend_op_array *op_array, const zend_ssa *ssa, int ssa_var_num…
H A Dzend_inference.h40 …inline bool _ssa_##opN##_has_range(const zend_op_array *op_array, const zend_ssa *ssa, const zend_…
55 …e zend_long _ssa_##opN##_min_range(const zend_op_array *op_array, const zend_ssa *ssa, const zend_…
72 …e zend_long _ssa_##opN##_max_range(const zend_op_array *op_array, const zend_ssa *ssa, const zend_…
165 static zend_always_inline uint32_t get_ssa_var_info(const zend_ssa *ssa, int ssa_var_num) in get_ssa_var_info()
175 …static zend_always_inline uint32_t _ssa_##opN##_info(const zend_op_array *op_array, const zend_ssa
185 …ine uint32_t _ssa_##opN##_def_info(const zend_op_array *op_array, const zend_ssa *ssa, const zend_…
220 ZEND_API void zend_ssa_find_false_dependencies(const zend_op_array *op_array, zend_ssa *ssa);
221 ZEND_API void zend_ssa_find_sccs(const zend_op_array *op_array, zend_ssa *ssa);
236 …opline, const zend_ssa_op *ssa_op, const zend_op_array *op_array, const zend_ssa *ssa, uint32_t t1…
237 …st zend_op *opline, const zend_ssa_op *ssa_op, const zend_op_array *op_array, const zend_ssa *ssa);
[all …]
H A Dzend_func_info.h60 const zend_function *callee_func, const zend_call_info *call_info, const zend_ssa *ssa);
62 const zend_call_info *call_info, const zend_ssa *ssa,
H A Dscdf.h26 zend_ssa *ssa;
49 void scdf_init(zend_optimizer_ctx *ctx, scdf_ctx *scdf, zend_op_array *op_array, zend_ssa *ssa);
56 const zend_ssa *ssa = scdf->ssa; in scdf_add_to_worklist()
H A Dzend_optimizer_internal.h116 zend_result zend_dfa_analyze_op_array(zend_op_array *op_array, zend_optimizer_ctx *ctx, zend_ssa *s…
117 void zend_dfa_optimize_op_array(zend_op_array *op_array, zend_optimizer_ctx *ctx, zend_ssa *ssa, ze…
127 int sccp_optimize_op_array(zend_optimizer_ctx *ctx, zend_op_array *op_array, zend_ssa *ssa, zend_ca…
128 int dce_optimize_op_array(zend_op_array *op_array, zend_optimizer_ctx *optimizer_ctx, zend_ssa *ssa…
129 zend_result zend_ssa_escape_analysis(const zend_script *script, zend_op_array *op_array, zend_ssa *…
H A Ddce.c50 zend_ssa *ssa;
62 static inline bool is_bad_mod(const zend_ssa *ssa, int use, int def) { in is_bad_mod()
75 zend_op_array *op_array, zend_ssa *ssa, in may_have_side_effects()
293 …erands_to_worklists(context *ctx, zend_op *opline, zend_ssa_op *ssa_op, zend_ssa *ssa, int check) { in add_operands_to_worklists()
318 zend_ssa *ssa = ctx->ssa; in add_phi_sources_to_worklists()
414 zend_ssa *ssa = ctx->ssa; in dce_instr()
466 static inline int get_common_phi_source(zend_ssa *ssa, zend_ssa_phi *phi) { in get_common_phi_source()
487 zend_ssa *ssa = ctx->ssa; in try_remove_trivial_phi()
506 static inline bool may_break_varargs(const zend_op_array *op_array, const zend_ssa *ssa, const zend… in may_break_varargs()
526 int dce_optimize_op_array(zend_op_array *op_array, zend_optimizer_ctx *optimizer_ctx, zend_ssa *ssa… in dce_optimize_op_array()
H A Dzend_func_info.c32 typedef uint32_t (*info_func_t)(const zend_call_info *call_info, const zend_ssa *ssa);
52 static uint32_t zend_range_info(const zend_call_info *call_info, const zend_ssa *ssa) in zend_range_info()
102 const zend_function *callee_func, const zend_call_info *call_info, const zend_ssa *ssa) { in zend_get_internal_func_info()
133 const zend_call_info *call_info, const zend_ssa *ssa, in zend_get_func_info()
H A Dssa_integrity.c24 static inline bool is_in_use_chain(zend_ssa *ssa, int var, int check) { in is_in_use_chain()
34 static inline bool is_in_phi_use_chain(zend_ssa *ssa, int var, zend_ssa_phi *check) { in is_in_phi_use_chain()
44 static inline bool is_used_by_op(zend_ssa *ssa, int op, int check) { in is_used_by_op()
51 static inline bool is_defined_by_op(zend_ssa *ssa, int op, int check) { in is_defined_by_op()
58 static inline bool is_in_phi_sources(zend_ssa *ssa, zend_ssa_phi *phi, int check) { in is_in_phi_sources()
92 static inline bool is_defined(const zend_ssa *ssa, const zend_op_array *op_array, int var) { in is_defined()
116 void ssa_verify_integrity(zend_op_array *op_array, zend_ssa *ssa, const char *extra) { in ssa_verify_integrity()
H A Dscdf.c82 void scdf_init(zend_optimizer_ctx *ctx, scdf_ctx *scdf, zend_op_array *op_array, zend_ssa *ssa) { in scdf_init()
104 zend_ssa *ssa = scdf->ssa; in scdf_solve()
224 zend_ssa *ssa = scdf->ssa; in cleanup_loop_var_free_block()
260 zend_ssa *ssa = scdf->ssa; in scdf_remove_unreachable_blocks()
H A Descape_analysis.c76 static zend_result zend_build_equi_escape_sets(int *parent, zend_op_array *op_array, zend_ssa *ssa)… in zend_build_equi_escape_sets()
150 static bool is_allocation_def(zend_op_array *op_array, zend_ssa *ssa, int def, int var, const zend_… in is_allocation_def()
221 static bool is_local_def(zend_op_array *op_array, zend_ssa *ssa, int def, int var, const zend_scrip… in is_local_def()
271 static bool is_escape_use(zend_op_array *op_array, zend_ssa *ssa, int use, int var) /* {{{ */ in is_escape_use()
382 zend_result zend_ssa_escape_analysis(const zend_script *script, zend_op_array *op_array, zend_ssa *… in zend_ssa_escape_analysis()
H A Dzend_ssa.c93 zend_arena **arena, const zend_op_array *op_array, zend_dfg *dfg, zend_ssa *ssa, in add_pi()
243 uint32_t build_flags, zend_ssa *ssa, zend_dfg *dfg) /* {{{ */ { in place_essa_pis()
1202 void zend_ssa_unlink_use_chain(zend_ssa *ssa, int op, int var) /* {{{ */ in zend_ssa_unlink_use_chain()
1241 void zend_ssa_replace_use_chain(zend_ssa *ssa, int op, int new_op, int var) /* {{{ */ in zend_ssa_replace_use_chain()
1364 void zend_ssa_remove_defs_of_instr(zend_ssa *ssa, zend_ssa_op *ssa_op) /* {{{ */ in zend_ssa_remove_defs_of_instr()
1410 void zend_ssa_remove_phi(zend_ssa *ssa, zend_ssa_phi *phi) /* {{{ */ in zend_ssa_remove_phi()
1422 void zend_ssa_remove_uses_of_var(zend_ssa *ssa, int var_num) /* {{{ */ in zend_ssa_remove_uses_of_var()
1455 void zend_ssa_remove_predecessor(zend_ssa *ssa, int from, int to) /* {{{ */ in zend_ssa_remove_predecessor()
1501 void zend_ssa_remove_block(zend_op_array *op_array, zend_ssa *ssa, int i) /* {{{ */ in zend_ssa_remove_block()
1530 void zend_ssa_remove_block_from_cfg(zend_ssa *ssa, int i) /* {{{ */ in zend_ssa_remove_block_from_cfg()
[all …]
H A Dzend_call_graph.h49 zend_ssa ssa; /* Static Single Assignment Form */
H A Dzend_dump.c359 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()
369 ZEND_API void zend_dump_ssa_var(const zend_op_array *op_array, const zend_ssa *ssa, int ssa_var_num… in zend_dump_ssa_var()
394 static void zend_dump_type_constraint(const zend_op_array *op_array, const zend_ssa *ssa, const zen… in zend_dump_type_constraint()
400 static void zend_dump_range_constraint(const zend_op_array *op_array, const zend_ssa *ssa, const ze… in zend_dump_range_constraint()
762 const zend_ssa *ssa = NULL; in zend_dump_op_line()
773 ssa = (const zend_ssa*)data; in zend_dump_op_line()
881 …_block_header(const zend_cfg *cfg, const zend_op_array *op_array, const zend_ssa *ssa, int n, uint… in zend_dump_block_header()
933 const zend_ssa *ssa = NULL; in zend_dump_op_array()
944 ssa = (const zend_ssa*)data; in zend_dump_op_array()
1178 void zend_dump_ssa_variables(const zend_op_array *op_array, const zend_ssa *ssa, uint32_t dump_flag… in zend_dump_ssa_variables()
[all …]
H A Ddfa_pass.c41 zend_result zend_dfa_analyze_op_array(zend_op_array *op_array, zend_optimizer_ctx *ctx, zend_ssa *s… in zend_dfa_analyze_op_array()
51 memset(ssa, 0, sizeof(zend_ssa)); in zend_dfa_analyze_op_array()
113 static void zend_ssa_remove_nops(zend_op_array *op_array, zend_ssa *ssa, zend_optimizer_ctx *ctx) in zend_ssa_remove_nops()
295 const zend_script *script, zend_op_array *op_array, zend_ssa *ssa, zend_ssa_op *ssa_op) { in can_elide_return_type_check()
322 zend_op_array *op_array, zend_ssa *ssa, zend_op *opline, int src_var, uint32_t cv_var) { in opline_supports_assign_contraction()
370 static bool variable_defined_or_used_in_range(zend_ssa *ssa, int var, int start, int end) in variable_defined_or_used_in_range()
388 int zend_dfa_optimize_calls(zend_op_array *op_array, zend_ssa *ssa) in zend_dfa_optimize_calls()
525 static zend_always_inline void take_successor_0(zend_ssa *ssa, int block_num, zend_basic_block *blo… in take_successor_0()
572 static void replace_predecessor(zend_ssa *ssa, int block_id, int old_pred, int new_pred) { in replace_predecessor()
729 static int zend_dfa_optimize_jmps(zend_op_array *op_array, zend_ssa *ssa) in zend_dfa_optimize_jmps()
[all …]
H A Dzend_inference.c219 ZEND_API void zend_ssa_find_sccs(const zend_op_array *op_array, zend_ssa *ssa) /* {{{ */
443 ZEND_API void zend_ssa_find_sccs(const zend_op_array *op_array, zend_ssa *ssa) /* {{{ */ in zend_ssa_find_sccs()
787 const zend_op_array *op_array, const zend_ssa *ssa, in zend_inference_calc_binary_op_range()
1823 static void zend_infer_ranges(const zend_op_array *op_array, zend_ssa *ssa) /* {{{ */ in zend_infer_ranges()
2076 static void emit_type_narrowing_warning(const zend_op_array *op_array, zend_ssa *ssa, int var) in emit_type_narrowing_warning()
2252 zend_ssa *ssa, uint8_t opcode, uint32_t t1, uint32_t t2, int result_var, in binary_op_result_type()
2500 static bool result_may_be_separated(zend_ssa *ssa, zend_ssa_op *ssa_op) in result_may_be_separated()
2521 zend_ssa *ssa, in _zend_update_type_info()
4109 zend_ssa *ssa, in zend_update_type_info()
4299 const zend_op_array *op_array, zend_ssa *ssa, int var_num, in can_convert_to_double()
[all …]
H A Dsccp.c1773 zend_ssa *ssa = ctx->scdf.ssa; in value_from_type_and_range()
1918 zend_ssa *ssa = scdf->ssa; in sccp_mark_feasible_successors()
1934 zend_ssa *ssa = scdf->ssa; in sccp_mark_feasible_successors()
2041 zend_ssa *ssa = scdf->ssa; in sccp_visit_phi()
2086 zend_ssa *ssa = ctx->scdf.ssa; in remove_call()
2125 zend_ssa *ssa = ctx->scdf.ssa; in try_remove_definition()
2372 zend_ssa *ssa = ctx->scdf.ssa; in replace_constant_operands()
2439 zend_ssa *ssa, zend_op_array *op_array, zend_call_info **call_map) { in sccp_context_init()
2469 int sccp_optimize_op_array(zend_optimizer_ctx *ctx, zend_op_array *op_array, zend_ssa *ssa, zend_ca… in sccp_optimize_op_array()
H A Dzend_optimizer.c1284 static void zend_redo_pass_two_ex(zend_op_array *op_array, zend_ssa *ssa) in zend_redo_pass_two_ex()
/php-src/ext/opcache/tests/
H A Dbug78034.phpt2 Bug #78034: "pecl" tool fails with abort assertion in zend_ssa.c
/php-src/ext/opcache/jit/
H A Dzend_jit_trace.c525 zend_ssa *ssa; in zend_jit_trace_build_ssa()
562 memset(ssa, 0, sizeof(zend_ssa)); in zend_jit_trace_build_ssa()
790 …s_false_loop(const zend_op_array *op_array, const zend_ssa *ssa, const zend_op **tssa_opcodes, zen… in zend_jit_trace_is_false_loop()
809 …ssa_var_info(const zend_op_array *op_array, const zend_ssa *ssa, const zend_op **tssa_opcodes, zen… in zend_jit_trace_copy_ssa_var_info()
943 …sa_var_range(const zend_op_array *op_array, const zend_ssa *ssa, const zend_op **tssa_opcodes, zen… in zend_jit_trace_copy_ssa_var_range()
1239 zend_ssa ssa;
1248 zend_ssa *tssa; in zend_jit_trace_build_tssa()
1263 zend_ssa *ssa; in zend_jit_trace_build_tssa()
2773 const zend_ssa *op_array_ssa; in zend_jit_trace_allocate_registers()
3852 const zend_ssa *ssa, in zend_jit_find_ssa_var()
[all …]
H A Dzend_jit.c118 static bool zend_ssa_is_last_use(const zend_op_array *op_array, const zend_ssa *ssa, int var, int u… in zend_ssa_is_last_use()
252 …n(zend_call_info *call_info, uint32_t b, const zend_op_array *op_array, zend_ssa *ssa, const zend_… in zend_jit_needs_call_chain()
437 static uint32_t skip_valid_arguments(const zend_op_array *op_array, zend_ssa *ssa, const zend_call_… in skip_valid_arguments()
464 static uint32_t zend_ssa_cv_info(const zend_op_array *op_array, zend_ssa *ssa, uint32_t var) in zend_ssa_cv_info()
751 …low(const zend_op *opline, const zend_ssa_op *ssa_op, const zend_op_array *op_array, zend_ssa *ssa) in zend_may_overflow()
944 static int zend_jit_op_array_analyze1(const zend_op_array *op_array, zend_script *script, zend_ssa in zend_jit_op_array_analyze1()
981 static int zend_jit_op_array_analyze2(const zend_op_array *op_array, zend_script *script, zend_ssa in zend_jit_op_array_analyze2()
997 static void zend_jit_allocate_registers(zend_jit_ctx *ctx, const zend_op_array *op_array, zend_ssa in zend_jit_allocate_registers()
1264 static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op *rt_opline) in zend_jit()
2798 zend_ssa ssa; in zend_real_jit_func()
[all …]
H A Dzend_jit_ir.c283 zend_ssa *ssa;
7938 zend_ssa *ssa, in zend_jit_fetch_constant()
8761 zend_ssa *ssa,
9024 zend_ssa *ssa,
12082 zend_ssa *ssa,
13743 zend_ssa *ssa,
14237 zend_ssa *ssa,
14590 zend_ssa *ssa,
15017 zend_ssa *ssa,
16578 zend_ssa *ssa,
[all …]
/php-src/win32/build/
H A Dconfig.w32244 …s_5.c nop_removal.c compact_literals.c zend_cfg.c zend_dfg.c dfa_pass.c zend_ssa.c zend_inference.…
318 …nd_dfg.h zend_dump.h zend_func_info.h zend_inference.h zend_optimizer.h zend_ssa.h zend_worklist.h…
/php-src/
H A Dconfigure.ac1660 zend_ssa.h \
1714 Optimizer/zend_ssa.c

Completed in 172 milliseconds