php-internal-docs 8.4.8
Unofficial docs for php/php-src
|
Go to the source code of this file.
Data Structures | |
struct | _zend_optimizer_ctx |
Macros | |
#define | ZEND_OP1_LITERAL(opline) |
#define | ZEND_OP1_JMP_ADDR(opline) |
#define | ZEND_OP2_LITERAL(opline) |
#define | ZEND_OP2_JMP_ADDR(opline) |
#define | VAR_NUM(v) |
#define | NUM_VAR(v) |
#define | INV_COND(op) |
#define | INV_EX_COND(op) |
#define | INV_COND_EX(op) |
#define | INV_EX_COND_EX(op) |
#define | RESULT_UNUSED(op) |
#define | SAME_VAR(op1, op2) |
#define | LITERAL_LONG(op, val) |
#define | LITERAL_BOOL(op, val) |
#define | literal_dtor(zv) |
#define | COPY_NODE(target, src) |
Typedefs | |
typedef struct _zend_optimizer_ctx | zend_optimizer_ctx |
typedef void(* | zend_op_array_func_t) (zend_op_array *, void *context) |
#define COPY_NODE | ( | target, | |
src ) |
Definition at line 71 of file zend_optimizer_internal.h.
#define INV_COND | ( | op | ) |
Definition at line 38 of file zend_optimizer_internal.h.
#define INV_COND_EX | ( | op | ) |
Definition at line 40 of file zend_optimizer_internal.h.
#define INV_EX_COND | ( | op | ) |
Definition at line 39 of file zend_optimizer_internal.h.
#define INV_EX_COND_EX | ( | op | ) |
Definition at line 41 of file zend_optimizer_internal.h.
Definition at line 60 of file zend_optimizer_internal.h.
Definition at line 66 of file zend_optimizer_internal.h.
Definition at line 54 of file zend_optimizer_internal.h.
Definition at line 36 of file zend_optimizer_internal.h.
#define RESULT_UNUSED | ( | op | ) |
Definition at line 43 of file zend_optimizer_internal.h.
Definition at line 44 of file zend_optimizer_internal.h.
Definition at line 35 of file zend_optimizer_internal.h.
#define ZEND_OP1_JMP_ADDR | ( | opline | ) |
Definition at line 31 of file zend_optimizer_internal.h.
#define ZEND_OP1_LITERAL | ( | opline | ) |
Definition at line 30 of file zend_optimizer_internal.h.
#define ZEND_OP2_JMP_ADDR | ( | opline | ) |
Definition at line 33 of file zend_optimizer_internal.h.
#define ZEND_OP2_LITERAL | ( | opline | ) |
Definition at line 32 of file zend_optimizer_internal.h.
typedef void(* zend_op_array_func_t) (zend_op_array *, void *context) |
Definition at line 131 of file zend_optimizer_internal.h.
typedef struct _zend_optimizer_ctx zend_optimizer_ctx |
int dce_optimize_op_array | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | optimizer_ctx, | ||
zend_ssa * | ssa, | ||
bool | reorder_dtor_effects ) |
int sccp_optimize_op_array | ( | zend_optimizer_ctx * | ctx, |
zend_op_array * | op_array, | ||
zend_ssa * | ssa, | ||
zend_call_info ** | call_map ) |
zend_result zend_dfa_analyze_op_array | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx, | ||
zend_ssa * | ssa ) |
Definition at line 41 of file dfa_pass.c.
void zend_dfa_optimize_op_array | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx, | ||
zend_ssa * | ssa, | ||
zend_call_info ** | call_map ) |
Definition at line 1037 of file dfa_pass.c.
const zend_class_constant * zend_fetch_class_const_info | ( | const zend_script * | script, |
const zend_op_array * | op_array, | ||
const zend_op * | opline, | ||
bool * | is_prototype ) |
Definition at line 869 of file zend_optimizer.c.
void zend_foreach_op_array | ( | zend_script * | script, |
zend_op_array_func_t | func, | ||
void * | context ) |
Definition at line 1551 of file zend_optimizer.c.
void zend_optimize_cfg | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
Definition at line 1673 of file block_pass.c.
void zend_optimize_dfa | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
Definition at line 1665 of file dfa_pass.c.
void zend_optimize_func_calls | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
Definition at line 151 of file optimize_func_calls.c.
void zend_optimize_temporary_variables | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
Definition at line 43 of file optimize_temp_vars_5.c.
int zend_optimizer_add_literal | ( | zend_op_array * | op_array, |
const zval * | zv ) |
Definition at line 233 of file zend_optimizer.c.
uint32_t zend_optimizer_classify_function | ( | zend_string * | name, |
uint32_t | num_args ) |
Definition at line 1035 of file zend_optimizer.c.
void zend_optimizer_collect_constant | ( | zend_optimizer_ctx * | ctx, |
zval * | name, | ||
zval * | value ) |
Definition at line 44 of file zend_optimizer.c.
void zend_optimizer_compact_literals | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
Definition at line 154 of file compact_literals.c.
void zend_optimizer_compact_vars | ( | zend_op_array * | op_array | ) |
Definition at line 25 of file compact_vars.c.
void zend_optimizer_convert_to_free_op1 | ( | zend_op_array * | op_array, |
zend_op * | opline ) |
Definition at line 214 of file zend_optimizer.c.
zend_result zend_optimizer_eval_binary_op | ( | zval * | result, |
uint8_t | opcode, | ||
zval * | op1, | ||
zval * | op2 ) |
Definition at line 56 of file zend_optimizer.c.
zend_result zend_optimizer_eval_cast | ( | zval * | result, |
uint32_t | type, | ||
zval * | op1 ) |
Definition at line 83 of file zend_optimizer.c.
zend_result zend_optimizer_eval_special_func_call | ( | zval * | result, |
zend_string * | name, | ||
zend_string * | arg ) |
Definition at line 125 of file zend_optimizer.c.
zend_result zend_optimizer_eval_strlen | ( | zval * | result, |
const zval * | op1 ) |
Definition at line 115 of file zend_optimizer.c.
zend_result zend_optimizer_eval_unary_op | ( | zval * | result, |
uint8_t | opcode, | ||
zval * | op1 ) |
Definition at line 67 of file zend_optimizer.c.
zend_function * zend_optimizer_get_called_func | ( | zend_script * | script, |
zend_op_array * | op_array, | ||
zend_op * | opline, | ||
bool * | is_prototype ) |
Definition at line 921 of file zend_optimizer.c.
zend_class_entry * zend_optimizer_get_class_entry | ( | const zend_script * | script, |
const zend_op_array * | op_array, | ||
zend_string * | lcname ) |
Definition at line 833 of file zend_optimizer.c.
zend_class_entry * zend_optimizer_get_class_entry_from_op1 | ( | const zend_script * | script, |
const zend_op_array * | op_array, | ||
const zend_op * | opline ) |
Definition at line 852 of file zend_optimizer.c.
Definition at line 203 of file zend_optimizer.c.
zend_op * zend_optimizer_get_loop_var_def | ( | const zend_op_array * | op_array, |
zend_op * | free_opline ) |
Definition at line 1055 of file zend_optimizer.c.
bool zend_optimizer_get_persistent_constant | ( | zend_string * | name, |
zval * | result, | ||
int | copy ) |
Definition at line 33 of file block_pass.c.
void zend_optimizer_migrate_jump | ( | zend_op_array * | op_array, |
zend_op * | new_opline, | ||
zend_op * | opline ) |
Definition at line 708 of file zend_optimizer.c.
void zend_optimizer_nop_removal | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
Definition at line 33 of file nop_removal.c.
void zend_optimizer_pass1 | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
void zend_optimizer_pass3 | ( | zend_op_array * | op_array, |
zend_optimizer_ctx * | ctx ) |
bool zend_optimizer_replace_by_const | ( | zend_op_array * | op_array, |
zend_op * | opline, | ||
uint8_t | type, | ||
uint32_t | var, | ||
zval * | val ) |
Definition at line 620 of file zend_optimizer.c.
void zend_optimizer_shift_jump | ( | zend_op_array * | op_array, |
zend_op * | opline, | ||
uint32_t * | shiftlist ) |
Definition at line 753 of file zend_optimizer.c.
bool zend_optimizer_update_op1_const | ( | zend_op_array * | op_array, |
zend_op * | opline, | ||
zval * | val ) |
Definition at line 277 of file zend_optimizer.c.
bool zend_optimizer_update_op2_const | ( | zend_op_array * | op_array, |
zend_op * | opline, | ||
zval * | val ) |
Definition at line 438 of file zend_optimizer.c.
zend_result zend_ssa_escape_analysis | ( | const zend_script * | script, |
zend_op_array * | op_array, | ||
zend_ssa * | ssa ) |
Definition at line 382 of file escape_analysis.c.