Lines Matching refs:op1
44 ZEND_API int ZEND_FASTCALL add_function(zval *result, zval *op1, zval *op2);
45 ZEND_API int ZEND_FASTCALL sub_function(zval *result, zval *op1, zval *op2);
46 ZEND_API int ZEND_FASTCALL mul_function(zval *result, zval *op1, zval *op2);
47 ZEND_API int ZEND_FASTCALL pow_function(zval *result, zval *op1, zval *op2);
48 ZEND_API int ZEND_FASTCALL div_function(zval *result, zval *op1, zval *op2);
49 ZEND_API int ZEND_FASTCALL mod_function(zval *result, zval *op1, zval *op2);
50 ZEND_API int ZEND_FASTCALL boolean_xor_function(zval *result, zval *op1, zval *op2);
51 ZEND_API int ZEND_FASTCALL boolean_not_function(zval *result, zval *op1);
52 ZEND_API int ZEND_FASTCALL bitwise_not_function(zval *result, zval *op1);
53 ZEND_API int ZEND_FASTCALL bitwise_or_function(zval *result, zval *op1, zval *op2);
54 ZEND_API int ZEND_FASTCALL bitwise_and_function(zval *result, zval *op1, zval *op2);
55 ZEND_API int ZEND_FASTCALL bitwise_xor_function(zval *result, zval *op1, zval *op2);
56 ZEND_API int ZEND_FASTCALL shift_left_function(zval *result, zval *op1, zval *op2);
57 ZEND_API int ZEND_FASTCALL shift_right_function(zval *result, zval *op1, zval *op2);
58 ZEND_API int ZEND_FASTCALL concat_function(zval *result, zval *op1, zval *op2);
60 ZEND_API int ZEND_FASTCALL zend_is_identical(zval *op1, zval *op2);
62 ZEND_API int ZEND_FASTCALL is_equal_function(zval *result, zval *op1, zval *op2);
63 ZEND_API int ZEND_FASTCALL is_identical_function(zval *result, zval *op1, zval *op2);
64 ZEND_API int ZEND_FASTCALL is_not_identical_function(zval *result, zval *op1, zval *op2);
65 ZEND_API int ZEND_FASTCALL is_not_equal_function(zval *result, zval *op1, zval *op2);
66 ZEND_API int ZEND_FASTCALL is_smaller_function(zval *result, zval *op1, zval *op2);
67 ZEND_API int ZEND_FASTCALL is_smaller_or_equal_function(zval *result, zval *op1, zval *op2);
244 ZEND_API int ZEND_FASTCALL increment_function(zval *op1);
358 ZEND_API int ZEND_FASTCALL compare_function(zval *result, zval *op1, zval *op2);
360 ZEND_API int ZEND_FASTCALL numeric_compare_function(zval *op1, zval *op2);
361 ZEND_API int ZEND_FASTCALL string_compare_function_ex(zval *op1, zval *op2, zend_bool case_insensit…
362 ZEND_API int ZEND_FASTCALL string_compare_function(zval *op1, zval *op2);
363 ZEND_API int ZEND_FASTCALL string_case_compare_function(zval *op1, zval *op2);
365 ZEND_API int ZEND_FASTCALL string_locale_compare_function(zval *op1, zval *op2);
472 static zend_always_inline void fast_long_increment_function(zval *op1) in fast_long_increment_function() argument
479 : "r"(&op1->value) in fast_long_increment_function()
484 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); in fast_long_increment_function()
490 : "r"(&op1->value) in fast_long_increment_function()
495 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); in fast_long_increment_function()
498 if (UNEXPECTED(__builtin_saddl_overflow(Z_LVAL_P(op1), 1, &lresult))) { in fast_long_increment_function()
500 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); in fast_long_increment_function()
502 Z_LVAL_P(op1) = lresult; in fast_long_increment_function()
506 if (UNEXPECTED(__builtin_saddll_overflow(Z_LVAL_P(op1), 1, &llresult))) { in fast_long_increment_function()
508 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); in fast_long_increment_function()
510 Z_LVAL_P(op1) = llresult; in fast_long_increment_function()
513 if (UNEXPECTED(Z_LVAL_P(op1) == ZEND_LONG_MAX)) { in fast_long_increment_function()
515 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); in fast_long_increment_function()
517 Z_LVAL_P(op1)++; in fast_long_increment_function()
522 static zend_always_inline void fast_long_decrement_function(zval *op1) in fast_long_decrement_function() argument
529 : "r"(&op1->value) in fast_long_decrement_function()
534 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); in fast_long_decrement_function()
540 : "r"(&op1->value) in fast_long_decrement_function()
545 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); in fast_long_decrement_function()
548 if (UNEXPECTED(__builtin_ssubl_overflow(Z_LVAL_P(op1), 1, &lresult))) { in fast_long_decrement_function()
550 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); in fast_long_decrement_function()
552 Z_LVAL_P(op1) = lresult; in fast_long_decrement_function()
556 if (UNEXPECTED(__builtin_ssubll_overflow(Z_LVAL_P(op1), 1, &llresult))) { in fast_long_decrement_function()
558 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); in fast_long_decrement_function()
560 Z_LVAL_P(op1) = llresult; in fast_long_decrement_function()
563 if (UNEXPECTED(Z_LVAL_P(op1) == ZEND_LONG_MIN)) { in fast_long_decrement_function()
565 ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); in fast_long_decrement_function()
567 Z_LVAL_P(op1)--; in fast_long_decrement_function()
572 static zend_always_inline void fast_long_add_function(zval *result, zval *op1, zval *op2) in fast_long_add_function() argument
583 "r"(&op1->value), in fast_long_add_function()
591 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); in fast_long_add_function()
601 "r"(&op1->value), in fast_long_add_function()
609 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); in fast_long_add_function()
612 if (UNEXPECTED(__builtin_saddl_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &lresult))) { in fast_long_add_function()
613 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); in fast_long_add_function()
619 if (UNEXPECTED(__builtin_saddll_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &llresult))) { in fast_long_add_function()
620 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); in fast_long_add_function()
631 if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) == (Z_LVAL_P(op2) & LONG_SIGN_MASK) in fast_long_add_function()
632 && (Z_LVAL_P(op1) & LONG_SIGN_MASK) != ((Z_LVAL_P(op1) + Z_LVAL_P(op2)) & LONG_SIGN_MASK))) { in fast_long_add_function()
633 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); in fast_long_add_function()
635 ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2)); in fast_long_add_function()
640 static zend_always_inline int fast_add_function(zval *result, zval *op1, zval *op2) in fast_add_function() argument
642 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_add_function()
644 fast_long_add_function(result, op1, op2); in fast_add_function()
647 ZVAL_DOUBLE(result, ((double)Z_LVAL_P(op1)) + Z_DVAL_P(op2)); in fast_add_function()
650 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_add_function()
652 ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2)); in fast_add_function()
655 ZVAL_DOUBLE(result, Z_DVAL_P(op1) + ((double)Z_LVAL_P(op2))); in fast_add_function()
659 return add_function(result, op1, op2); in fast_add_function()
662 static zend_always_inline void fast_long_sub_function(zval *result, zval *op1, zval *op2) in fast_long_sub_function() argument
673 "r"(&op1->value), in fast_long_sub_function()
681 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); in fast_long_sub_function()
691 "r"(&op1->value), in fast_long_sub_function()
699 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); in fast_long_sub_function()
702 if (UNEXPECTED(__builtin_ssubl_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &lresult))) { in fast_long_sub_function()
703 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); in fast_long_sub_function()
709 if (UNEXPECTED(__builtin_ssubll_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &llresult))) { in fast_long_sub_function()
710 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); in fast_long_sub_function()
715 ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2)); in fast_long_sub_function()
717 if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(op2) & LONG_SIGN_MASK) in fast_long_sub_function()
718 && (Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(result) & LONG_SIGN_MASK))) { in fast_long_sub_function()
719 ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); in fast_long_sub_function()
724 static zend_always_inline int fast_div_function(zval *result, zval *op1, zval *op2) in fast_div_function() argument
726 return div_function(result, op1, op2); in fast_div_function()
740 static zend_always_inline int fast_equal_check_function(zval *op1, zval *op2) in fast_equal_check_function() argument
743 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_equal_check_function()
745 return Z_LVAL_P(op1) == Z_LVAL_P(op2); in fast_equal_check_function()
747 return ((double)Z_LVAL_P(op1)) == Z_DVAL_P(op2); in fast_equal_check_function()
749 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_equal_check_function()
751 return Z_DVAL_P(op1) == Z_DVAL_P(op2); in fast_equal_check_function()
753 return Z_DVAL_P(op1) == ((double)Z_LVAL_P(op2)); in fast_equal_check_function()
755 } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { in fast_equal_check_function()
757 return zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); in fast_equal_check_function()
760 compare_function(&result, op1, op2); in fast_equal_check_function()
764 static zend_always_inline int fast_equal_check_long(zval *op1, zval *op2) in fast_equal_check_long() argument
768 return Z_LVAL_P(op1) == Z_LVAL_P(op2); in fast_equal_check_long()
770 compare_function(&result, op1, op2); in fast_equal_check_long()
774 static zend_always_inline int fast_equal_check_string(zval *op1, zval *op2) in fast_equal_check_string() argument
778 return zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); in fast_equal_check_string()
780 compare_function(&result, op1, op2); in fast_equal_check_string()
784 static zend_always_inline int fast_is_identical_function(zval *op1, zval *op2) in fast_is_identical_function() argument
786 if (Z_TYPE_P(op1) != Z_TYPE_P(op2)) { in fast_is_identical_function()
788 } else if (Z_TYPE_P(op1) <= IS_TRUE) { in fast_is_identical_function()
791 return zend_is_identical(op1, op2); in fast_is_identical_function()
794 static zend_always_inline int fast_is_not_identical_function(zval *op1, zval *op2) in fast_is_not_identical_function() argument
796 if (Z_TYPE_P(op1) != Z_TYPE_P(op2)) { in fast_is_not_identical_function()
798 } else if (Z_TYPE_P(op1) <= IS_TRUE) { in fast_is_not_identical_function()
801 return !zend_is_identical(op1, op2); in fast_is_not_identical_function()
805 …if (UNEXPECTED(Z_TYPE_P(op1) == IS_OBJECT) …
806 …&& op1 == result …
807 …&& UNEXPECTED(Z_OBJ_HANDLER_P(op1, get)) …
808 …&& EXPECTED(Z_OBJ_HANDLER_P(op1, set))) { …
811 zval *objval = Z_OBJ_HANDLER_P(op1, get)(op1, &rv); \
814 Z_OBJ_HANDLER_P(op1, set)(op1, objval); \
817 …} else if (UNEXPECTED(Z_TYPE_P(op1) == IS_OBJECT) …
818 …&& UNEXPECTED(Z_OBJ_HANDLER_P(op1, do_operation))) { …
819 if (EXPECTED(SUCCESS == Z_OBJ_HANDLER_P(op1, do_operation)(opcode, result, op1, op2))) { \
827 && EXPECTED(SUCCESS == Z_OBJ_HANDLER_P(op2, do_operation)(opcode, result, op1, op2))) { \
837 …if (UNEXPECTED(Z_TYPE_P(op1) == IS_OBJECT) …
838 …&& UNEXPECTED(Z_OBJ_HANDLER_P(op1, do_operation)) …
839 && EXPECTED(SUCCESS == Z_OBJ_HANDLER_P(op1, do_operation)(opcode, result, op1, NULL))) { \