Lines Matching refs:val

46 	zval val;  in zend_optimizer_collect_constant()  local
52 ZVAL_DUP(&val, value); in zend_optimizer_collect_constant()
53 zend_hash_add(ctx->constants, Z_STR_P(name), &val); in zend_optimizer_collect_constant()
194 zval *val; in zend_optimizer_get_collected_constant() local
196 if ((val = zend_hash_find(constants, Z_STR_P(name))) != NULL) { in zend_optimizer_get_collected_constant()
197 ZVAL_DUP(value, val); in zend_optimizer_get_collected_constant()
227 static inline void drop_leading_backslash(zval *val) { in drop_leading_backslash() argument
228 if (Z_STRVAL_P(val)[0] == '\\') { in drop_leading_backslash() local
229 zend_string *str = zend_string_init(Z_STRVAL_P(val) + 1, Z_STRLEN_P(val) - 1, 0); in drop_leading_backslash()
230 zval_ptr_dtor_nogc(val); in drop_leading_backslash()
231 ZVAL_STR(val, str); in drop_leading_backslash()
244 #define REQUIRES_STRING(val) do { \ argument
245 if (Z_TYPE_P(val) != IS_STRING) { \
250 #define TO_STRING_NOWARN(val) do { \ argument
251 if (Z_TYPE_P(val) >= IS_ARRAY) { \
254 convert_to_string(val); \
259 zval *val) in zend_optimizer_update_op1_const() argument
265 zval_ptr_dtor_nogc(val); in zend_optimizer_update_op1_const()
281 REQUIRES_STRING(val); in zend_optimizer_update_op1_const()
282 drop_leading_backslash(val); in zend_optimizer_update_op1_const()
283 opline->op1.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op1_const()
285 zend_optimizer_add_literal_string(op_array, zend_string_tolower(Z_STR_P(val))); in zend_optimizer_update_op1_const()
293 TO_STRING_NOWARN(val); in zend_optimizer_update_op1_const()
294 opline->op1.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op1_const()
299 opline->op1.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op1_const()
320 TO_STRING_NOWARN(val); in zend_optimizer_update_op1_const()
323 opline->op1.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op1_const()
336 zval *val) in zend_optimizer_update_op2_const() argument
358 REQUIRES_STRING(val); in zend_optimizer_update_op2_const()
359 drop_leading_backslash(val); in zend_optimizer_update_op2_const()
360 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
361 zend_optimizer_add_literal_string(op_array, zend_string_tolower(Z_STR_P(val))); in zend_optimizer_update_op2_const()
365 REQUIRES_STRING(val); in zend_optimizer_update_op2_const()
366 if (Z_REFCOUNT_P(val) == 1) { in zend_optimizer_update_op2_const()
367 zend_str_tolower(Z_STRVAL_P(val), Z_STRLEN_P(val)); in zend_optimizer_update_op2_const()
369 ZVAL_STR(&tmp, zend_string_tolower(Z_STR_P(val))); in zend_optimizer_update_op2_const()
370 zval_ptr_dtor_nogc(val); in zend_optimizer_update_op2_const()
371 val = &tmp; in zend_optimizer_update_op2_const()
373 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
377 if (Z_TYPE_P(val) == IS_STRING) { in zend_optimizer_update_op2_const()
378 if (zend_memrchr(Z_STRVAL_P(val), ':', Z_STRLEN_P(val))) { in zend_optimizer_update_op2_const()
382 if (zend_optimizer_classify_function(Z_STR_P(val), opline->extended_value)) { in zend_optimizer_update_op2_const()
389 drop_leading_backslash(val); in zend_optimizer_update_op2_const()
390 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
391 zend_optimizer_add_literal_string(op_array, zend_string_tolower(Z_STR_P(val))); in zend_optimizer_update_op2_const()
394 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
399 REQUIRES_STRING(val); in zend_optimizer_update_op2_const()
400 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
401 zend_optimizer_add_literal_string(op_array, zend_string_tolower(Z_STR_P(val))); in zend_optimizer_update_op2_const()
418 TO_STRING_NOWARN(val); in zend_optimizer_update_op2_const()
419 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
435 TO_STRING_NOWARN(val); in zend_optimizer_update_op2_const()
436 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
439 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
454 if (Z_TYPE_P(val) == IS_STRING) { in zend_optimizer_update_op2_const()
456 if (ZEND_HANDLE_NUMERIC(Z_STR_P(val), index)) { in zend_optimizer_update_op2_const()
457 zval_ptr_dtor_nogc(val); in zend_optimizer_update_op2_const()
458 ZVAL_LONG(val, index); in zend_optimizer_update_op2_const()
461 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
468 TO_STRING_NOWARN(val); in zend_optimizer_update_op2_const()
471 opline->op2.constant = zend_optimizer_add_literal(op_array, val); in zend_optimizer_update_op2_const()
562 zval *val) in zend_optimizer_replace_by_const() argument
608 ZVAL_COPY_VALUE(&v, val); in zend_optimizer_replace_by_const()
621 zval_ptr_dtor_nogc(val); in zend_optimizer_replace_by_const()
643 zval_ptr_dtor_nogc(val); in zend_optimizer_replace_by_const()
663 ZVAL_COPY_VALUE(&v, val); in zend_optimizer_replace_by_const()
678 zval_ptr_dtor_nogc(val); in zend_optimizer_replace_by_const()
686 || !ZEND_SAME_FAKE_TYPE(ZEND_TYPE_CODE(ret_info->type), Z_TYPE_P(val)) in zend_optimizer_replace_by_const()
703 if (zend_optimizer_update_op1_const(op_array, opline, val)) { in zend_optimizer_replace_by_const()
712 if (zend_optimizer_update_op2_const(op_array, opline, val)) { in zend_optimizer_replace_by_const()