/PHP-8.3/Zend/Optimizer/ |
H A D | zend_ssa.h | 143 } 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 D | zend_dump.h | 37 … 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); 43 void zend_dump_ssa_variables(const zend_op_array *op_array, const zend_ssa *ssa, uint32_t dump_flag… 44 ZEND_API void zend_dump_ssa_var(const zend_op_array *op_array, const zend_ssa *ssa, int ssa_var_num…
|
H A D | zend_inference.h | 40 …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 D | zend_func_info.h | 60 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 D | scdf.h | 26 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 D | zend_optimizer_internal.h | 114 zend_result zend_dfa_analyze_op_array(zend_op_array *op_array, zend_optimizer_ctx *ctx, zend_ssa *s… 115 void zend_dfa_optimize_op_array(zend_op_array *op_array, zend_optimizer_ctx *ctx, zend_ssa *ssa, ze… 125 int sccp_optimize_op_array(zend_optimizer_ctx *ctx, zend_op_array *op_array, zend_ssa *ssa, zend_ca… 126 int dce_optimize_op_array(zend_op_array *op_array, zend_optimizer_ctx *optimizer_ctx, zend_ssa *ssa… 127 zend_result zend_ssa_escape_analysis(const zend_script *script, zend_op_array *op_array, zend_ssa *…
|
H A D | dce.c | 50 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() 288 …erands_to_worklists(context *ctx, zend_op *opline, zend_ssa_op *ssa_op, zend_ssa *ssa, int check) { in add_operands_to_worklists() 313 zend_ssa *ssa = ctx->ssa; in add_phi_sources_to_worklists() 409 zend_ssa *ssa = ctx->ssa; in dce_instr() 461 static inline int get_common_phi_source(zend_ssa *ssa, zend_ssa_phi *phi) { in get_common_phi_source() 482 zend_ssa *ssa = ctx->ssa; in try_remove_trivial_phi() 501 static inline bool may_break_varargs(const zend_op_array *op_array, const zend_ssa *ssa, const zend… in may_break_varargs() 521 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 D | zend_func_info.c | 32 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() 100 const zend_function *callee_func, const zend_call_info *call_info, const zend_ssa *ssa) { in zend_get_internal_func_info() 131 const zend_call_info *call_info, const zend_ssa *ssa, in zend_get_func_info()
|
H A D | ssa_integrity.c | 24 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 D | scdf.c | 82 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 D | escape_analysis.c | 76 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 D | zend_call_graph.h | 48 zend_ssa ssa; /* Static Single Assignment Form */
|
H A D | zend_ssa.c | 93 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() 1173 void zend_ssa_unlink_use_chain(zend_ssa *ssa, int op, int var) /* {{{ */ in zend_ssa_unlink_use_chain() 1212 void zend_ssa_replace_use_chain(zend_ssa *ssa, int op, int new_op, int var) /* {{{ */ in zend_ssa_replace_use_chain() 1335 void zend_ssa_remove_defs_of_instr(zend_ssa *ssa, zend_ssa_op *ssa_op) /* {{{ */ in zend_ssa_remove_defs_of_instr() 1381 void zend_ssa_remove_phi(zend_ssa *ssa, zend_ssa_phi *phi) /* {{{ */ in zend_ssa_remove_phi() 1393 void zend_ssa_remove_uses_of_var(zend_ssa *ssa, int var_num) /* {{{ */ in zend_ssa_remove_uses_of_var() 1426 void zend_ssa_remove_predecessor(zend_ssa *ssa, int from, int to) /* {{{ */ in zend_ssa_remove_predecessor() 1472 void zend_ssa_remove_block(zend_op_array *op_array, zend_ssa *ssa, int i) /* {{{ */ in zend_ssa_remove_block() 1501 void zend_ssa_remove_block_from_cfg(zend_ssa *ssa, int i) /* {{{ */ in zend_ssa_remove_block_from_cfg() [all …]
|
H A D | zend_dump.c | 359 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() 757 const zend_ssa *ssa = NULL; in zend_dump_op_line() 768 ssa = (const zend_ssa*)data; in zend_dump_op_line() 876 …_block_header(const zend_cfg *cfg, const zend_op_array *op_array, const zend_ssa *ssa, int n, uint… in zend_dump_block_header() 929 const zend_ssa *ssa = NULL; in zend_dump_op_array() 940 ssa = (const zend_ssa*)data; in zend_dump_op_array() 1188 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 D | dfa_pass.c | 41 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() 728 static int zend_dfa_optimize_jmps(zend_op_array *op_array, zend_ssa *ssa) in zend_dfa_optimize_jmps() [all …]
|
H A D | zend_inference.c | 219 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() 797 const zend_op_array *op_array, const zend_ssa *ssa, in zend_inference_calc_binary_op_range() 1833 static void zend_infer_ranges(const zend_op_array *op_array, zend_ssa *ssa) /* {{{ */ in zend_infer_ranges() 2081 static void emit_type_narrowing_warning(const zend_op_array *op_array, zend_ssa *ssa, int var) in emit_type_narrowing_warning() 2257 zend_ssa *ssa, uint8_t opcode, uint32_t t1, uint32_t t2, int result_var, in binary_op_result_type() 2505 static bool result_may_be_separated(zend_ssa *ssa, zend_ssa_op *ssa_op) in result_may_be_separated() 2526 zend_ssa *ssa, in _zend_update_type_info() 3986 zend_ssa *ssa, in zend_update_type_info() 4176 const zend_op_array *op_array, zend_ssa *ssa, int var_num, in can_convert_to_double() [all …]
|
H A D | sccp.c | 1723 zend_ssa *ssa = ctx->scdf.ssa; in value_from_type_and_range() 1868 zend_ssa *ssa = scdf->ssa; in sccp_mark_feasible_successors() 1884 zend_ssa *ssa = scdf->ssa; in sccp_mark_feasible_successors() 1991 zend_ssa *ssa = scdf->ssa; in sccp_visit_phi() 2036 zend_ssa *ssa = ctx->scdf.ssa; in remove_call() 2075 zend_ssa *ssa = ctx->scdf.ssa; in try_remove_definition() 2311 zend_ssa *ssa = ctx->scdf.ssa; in replace_constant_operands() 2378 zend_ssa *ssa, zend_op_array *op_array, zend_call_info **call_map) { in sccp_context_init() 2408 int sccp_optimize_op_array(zend_optimizer_ctx *ctx, zend_op_array *op_array, zend_ssa *ssa, zend_ca… in sccp_optimize_op_array()
|
/PHP-8.3/ext/opcache/tests/ |
H A D | bug78034.phpt | 2 Bug #78034: "pecl" tool fails with abort assertion in zend_ssa.c
|
/PHP-8.3/ext/opcache/jit/ |
H A D | zend_jit.c | 191 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() 541 static uint32_t zend_ssa_cv_info(const zend_op_array *op_array, zend_ssa *ssa, uint32_t var) in zend_ssa_cv_info() 918 zend_ssa *ssa, in dasm_link_and_encode() 1327 static int zend_jit_op_array_analyze1(const zend_op_array *op_array, zend_script *script, zend_ssa … in zend_jit_op_array_analyze1() 1621 static int *zend_jit_compute_block_order_int(zend_ssa *ssa, int n, int *block_order) in zend_jit_compute_block_order_int() 1642 static int zend_jit_compute_block_order(zend_ssa *ssa, int *block_order) in zend_jit_compute_block_order() 1649 static bool zend_jit_in_loop(zend_ssa *ssa, int header, zend_basic_block *b) in zend_jit_in_loop() 1660 static void zend_jit_compute_loop_body(zend_ssa *ssa, int header, int n, zend_bitset loop_body) in zend_jit_compute_loop_body() 2703 static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op *rt_opline) in zend_jit() 4218 zend_ssa ssa; in zend_real_jit_func() [all …]
|
H A D | zend_jit_trace.c | 558 zend_ssa *ssa; in zend_jit_trace_build_ssa() 595 memset(ssa, 0, sizeof(zend_ssa)); in zend_jit_trace_build_ssa() 822 …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() 879 …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() 929 …ssa_var_info(const zend_op_array *op_array, const zend_ssa *ssa, const zend_op **tssa_opcodes, zen… in zend_jit_trace_restrict_ssa_var_info() 1175 zend_ssa ssa; 1184 zend_ssa *tssa; in zend_jit_trace_build_tssa() 1199 zend_ssa *ssa; in zend_jit_trace_build_tssa() 2711 const zend_ssa *op_array_ssa; in zend_jit_trace_allocate_registers() 3601 zend_ssa *ssa, in zend_jit_trace_deoptimization() [all …]
|
H A D | zend_jit_arm64.dasc | 8838 zend_ssa *ssa, 9059 zend_ssa *ssa, 11076 zend_ssa *ssa, 12130 zend_ssa *ssa, 12624 zend_ssa *ssa, 13049 zend_ssa *ssa, 13431 zend_ssa *ssa, 14664 zend_ssa *ssa, 14960 static bool zend_jit_may_reuse_reg(const zend_op *opline, const zend_ssa_op *ssa_op, zend_ssa *ssa,… 15089 static bool zend_jit_var_supports_reg(zend_ssa *ssa, int var) [all …]
|
H A D | zend_jit_x86.dasc | 9506 zend_ssa *ssa, 9758 zend_ssa *ssa, 11810 zend_ssa *ssa, 12899 zend_ssa *ssa, 13404 zend_ssa *ssa, 13867 zend_ssa *ssa, 14291 zend_ssa *ssa, 15607 zend_ssa *ssa, 15905 static bool zend_jit_may_reuse_reg(const zend_op *opline, const zend_ssa_op *ssa_op, zend_ssa *ssa,… 16032 static bool zend_jit_var_supports_reg(zend_ssa *ssa, int var) [all …]
|
/PHP-8.3/.github/ |
H A D | labeler.yml | 260 - 'Zend/Optimizer/zend_ssa.h'
|
/PHP-8.3/win32/build/ |
H A D | config.w32 | 244 …s_5.c nop_removal.c compact_literals.c zend_cfg.c zend_dfg.c dfa_pass.c zend_ssa.c zend_inference.… 326 …all_graph.h zend_cfg.h zend_dump.h zend_func_info.h zend_inference.h zend_optimizer.h zend_ssa.h");
|
/PHP-8.3/ |
H A D | configure.ac | 1724 zend_ssa.h]) 1772 Optimizer/zend_ssa.c \
|