Lines Matching refs:op_array

25 void zend_optimizer_compact_vars(zend_op_array *op_array) {  in zend_optimizer_compact_vars()  argument
30 uint32_t used_cvs_len = zend_bitset_len(op_array->last_var); in zend_optimizer_compact_vars()
32 uint32_t *cv_map = do_alloca(op_array->last_var * sizeof(uint32_t), use_heap2); in zend_optimizer_compact_vars()
37 for (i = 0; i < op_array->last; i++) { in zend_optimizer_compact_vars()
38 zend_op *opline = &op_array->opcodes[i]; in zend_optimizer_compact_vars()
51 for (i = 0; i < op_array->last_var; i++) { in zend_optimizer_compact_vars()
60 if (num_cvs == op_array->last_var) { in zend_optimizer_compact_vars()
65 ZEND_ASSERT(num_cvs < op_array->last_var); in zend_optimizer_compact_vars()
66 tmp_offset = op_array->last_var - num_cvs; in zend_optimizer_compact_vars()
69 for (i = 0; i < op_array->last; i++) { in zend_optimizer_compact_vars()
70 zend_op *opline = &op_array->opcodes[i]; in zend_optimizer_compact_vars()
89 if (op_array->live_range) { in zend_optimizer_compact_vars()
90 for (i = 0; i < op_array->last_live_range; i++) { in zend_optimizer_compact_vars()
91 op_array->live_range[i].var -= sizeof(zval) * tmp_offset; in zend_optimizer_compact_vars()
98 for (i = 0; i < op_array->last_var; i++) { in zend_optimizer_compact_vars()
100 names[cv_map[i]] = op_array->vars[i]; in zend_optimizer_compact_vars()
102 zend_string_release(op_array->vars[i]); in zend_optimizer_compact_vars()
105 efree(op_array->vars); in zend_optimizer_compact_vars()
106 op_array->vars = names; in zend_optimizer_compact_vars()
108 for (i = 0; i < op_array->last_var; i++) { in zend_optimizer_compact_vars()
109 zend_string_release(op_array->vars[i]); in zend_optimizer_compact_vars()
111 efree(op_array->vars); in zend_optimizer_compact_vars()
112 op_array->vars = NULL; in zend_optimizer_compact_vars()
115 op_array->last_var = num_cvs; in zend_optimizer_compact_vars()