Lines Matching refs:op_array

24 void zend_optimizer_compact_vars(zend_op_array *op_array) {  in zend_optimizer_compact_vars()  argument
29 uint32_t used_vars_len = zend_bitset_len(op_array->last_var + op_array->T); in zend_optimizer_compact_vars()
31 uint32_t *vars_map = do_alloca((op_array->last_var + op_array->T) * sizeof(uint32_t), use_heap2); in zend_optimizer_compact_vars()
36 for (i = 0; i < op_array->last; i++) { in zend_optimizer_compact_vars()
37 zend_op *opline = &op_array->opcodes[i]; in zend_optimizer_compact_vars()
57 for (i = 0; i < op_array->last_var; i++) { in zend_optimizer_compact_vars()
66 for (i = op_array->last_var; i < op_array->last_var + op_array->T; i++) { in zend_optimizer_compact_vars()
75 if (num_cvs == op_array->last_var && num_tmps == op_array->T) { in zend_optimizer_compact_vars()
80 ZEND_ASSERT(num_cvs <= op_array->last_var); in zend_optimizer_compact_vars()
81 ZEND_ASSERT(num_tmps <= op_array->T); in zend_optimizer_compact_vars()
84 for (i = 0; i < op_array->last; i++) { in zend_optimizer_compact_vars()
85 zend_op *opline = &op_array->opcodes[i]; in zend_optimizer_compact_vars()
98 if (num_cvs != op_array->last_var) { in zend_optimizer_compact_vars()
101 for (i = 0; i < op_array->last_var; i++) { in zend_optimizer_compact_vars()
103 names[vars_map[i]] = op_array->vars[i]; in zend_optimizer_compact_vars()
105 zend_string_release_ex(op_array->vars[i], 0); in zend_optimizer_compact_vars()
108 efree(op_array->vars); in zend_optimizer_compact_vars()
109 op_array->vars = names; in zend_optimizer_compact_vars()
111 for (i = 0; i < op_array->last_var; i++) { in zend_optimizer_compact_vars()
112 zend_string_release_ex(op_array->vars[i], 0); in zend_optimizer_compact_vars()
114 efree(op_array->vars); in zend_optimizer_compact_vars()
115 op_array->vars = NULL; in zend_optimizer_compact_vars()
117 op_array->last_var = num_cvs; in zend_optimizer_compact_vars()
120 op_array->T = num_tmps; in zend_optimizer_compact_vars()