Lines Matching refs:op2

47 ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
48 ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
49 ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
50 ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
51 ZEND_API int mod_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
52 ZEND_API int boolean_xor_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
55 ZEND_API int bitwise_or_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
56 ZEND_API int bitwise_and_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
57 ZEND_API int bitwise_xor_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
58 ZEND_API int shift_left_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
59 ZEND_API int shift_right_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
60 ZEND_API int concat_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
62 ZEND_API int is_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
63 ZEND_API int is_identical_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
64 ZEND_API int is_not_identical_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
65 ZEND_API int is_not_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
66 ZEND_API int is_smaller_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
67 ZEND_API int is_smaller_or_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
324 ZEND_API int decrement_function(zval *op2);
339 ZEND_API int add_char_to_string(zval *result, const zval *op1, const zval *op2);
340 ZEND_API int add_string_to_string(zval *result, const zval *op1, const zval *op2);
347 ZEND_API int compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
348 ZEND_API int numeric_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
349 ZEND_API int string_compare_function_ex(zval *result, zval *op1, zval *op2, zend_bool case_insensit…
350 ZEND_API int string_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
351 ZEND_API int string_case_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
353 ZEND_API int string_locale_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
592 static zend_always_inline int fast_add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_add_function()
595 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_add_function()
614 "r"(&op2->value), in fast_add_function()
637 "r"(&op2->value), in fast_add_function()
649 if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) == (Z_LVAL_P(op2) & LONG_SIGN_MASK) in fast_add_function()
650 && (Z_LVAL_P(op1) & LONG_SIGN_MASK) != ((Z_LVAL_P(op1) + Z_LVAL_P(op2)) & LONG_SIGN_MASK))) { in fast_add_function()
651 Z_DVAL_P(result) = (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2); in fast_add_function()
654 Z_LVAL_P(result) = Z_LVAL_P(op1) + Z_LVAL_P(op2); in fast_add_function()
659 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_add_function()
660 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) + Z_DVAL_P(op2); in fast_add_function()
665 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_add_function()
666 Z_DVAL_P(result) = Z_DVAL_P(op1) + Z_DVAL_P(op2); in fast_add_function()
669 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_add_function()
670 Z_DVAL_P(result) = Z_DVAL_P(op1) + ((double)Z_LVAL_P(op2)); in fast_add_function()
675 return add_function(result, op1, op2 TSRMLS_CC); in fast_add_function()
678 static zend_always_inline int fast_sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_sub_function()
681 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_sub_function()
704 "r"(&op2->value), in fast_sub_function()
731 "r"(&op2->value), in fast_sub_function()
737 Z_LVAL_P(result) = Z_LVAL_P(op1) - Z_LVAL_P(op2); in fast_sub_function()
739 if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(op2) & LONG_SIGN_MASK) in fast_sub_function()
741 Z_DVAL_P(result) = (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2); in fast_sub_function()
748 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_sub_function()
749 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) - Z_DVAL_P(op2); in fast_sub_function()
754 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_sub_function()
755 Z_DVAL_P(result) = Z_DVAL_P(op1) - Z_DVAL_P(op2); in fast_sub_function()
758 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_sub_function()
759 Z_DVAL_P(result) = Z_DVAL_P(op1) - ((double)Z_LVAL_P(op2)); in fast_sub_function()
764 return sub_function(result, op1, op2 TSRMLS_CC); in fast_sub_function()
767 static zend_always_inline int fast_mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_mul_function()
770 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_mul_function()
773 …ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overfl… in fast_mul_function()
776 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_mul_function()
777 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) * Z_DVAL_P(op2); in fast_mul_function()
782 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_mul_function()
783 Z_DVAL_P(result) = Z_DVAL_P(op1) * Z_DVAL_P(op2); in fast_mul_function()
786 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_mul_function()
787 Z_DVAL_P(result) = Z_DVAL_P(op1) * ((double)Z_LVAL_P(op2)); in fast_mul_function()
792 return mul_function(result, op1, op2 TSRMLS_CC); in fast_mul_function()
795 static zend_always_inline int fast_div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_div_function()
799 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_div_function()
800 if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { in fast_div_function()
805 } else if (UNEXPECTED(Z_LVAL_P(op2) == -1 && Z_LVAL_P(op1) == LONG_MIN)) { in fast_div_function()
809 } else if (EXPECTED(Z_LVAL_P(op1) % Z_LVAL_P(op2) == 0)) { in fast_div_function()
811 Z_LVAL_P(result) = Z_LVAL_P(op1) / Z_LVAL_P(op2); in fast_div_function()
814 Z_DVAL_P(result) = ((double) Z_LVAL_P(op1)) / ((double)Z_LVAL_P(op2)); in fast_div_function()
818 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_div_function()
819 if (UNEXPECTED(Z_DVAL_P(op2) == 0)) { in fast_div_function()
825 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) / Z_DVAL_P(op2); in fast_div_function()
830 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_div_function()
831 if (UNEXPECTED(Z_DVAL_P(op2) == 0)) { in fast_div_function()
837 Z_DVAL_P(result) = Z_DVAL_P(op1) / Z_DVAL_P(op2); in fast_div_function()
840 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_div_function()
841 if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { in fast_div_function()
847 Z_DVAL_P(result) = Z_DVAL_P(op1) / ((double)Z_LVAL_P(op2)); in fast_div_function()
853 return div_function(result, op1, op2 TSRMLS_CC); in fast_div_function()
856 static zend_always_inline int fast_mod_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_mod_function()
859 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_mod_function()
860 if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { in fast_mod_function()
865 } else if (UNEXPECTED(Z_LVAL_P(op2) == -1)) { in fast_mod_function()
871 Z_LVAL_P(result) = Z_LVAL_P(op1) % Z_LVAL_P(op2); in fast_mod_function()
876 return mod_function(result, op1, op2 TSRMLS_CC); in fast_mod_function()
879 static zend_always_inline int fast_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_equal_function()
882 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_equal_function()
883 return Z_LVAL_P(op1) == Z_LVAL_P(op2); in fast_equal_function()
884 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_equal_function()
885 return ((double)Z_LVAL_P(op1)) == Z_DVAL_P(op2); in fast_equal_function()
888 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_equal_function()
889 return Z_DVAL_P(op1) == Z_DVAL_P(op2); in fast_equal_function()
890 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_equal_function()
891 return Z_DVAL_P(op1) == ((double)Z_LVAL_P(op2)); in fast_equal_function()
894 compare_function(result, op1, op2 TSRMLS_CC); in fast_equal_function()
898 static zend_always_inline int fast_not_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_not_equal_function()
901 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_not_equal_function()
902 return Z_LVAL_P(op1) != Z_LVAL_P(op2); in fast_not_equal_function()
903 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_not_equal_function()
904 return ((double)Z_LVAL_P(op1)) != Z_DVAL_P(op2); in fast_not_equal_function()
907 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_not_equal_function()
908 return Z_DVAL_P(op1) != Z_DVAL_P(op2); in fast_not_equal_function()
909 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_not_equal_function()
910 return Z_DVAL_P(op1) != ((double)Z_LVAL_P(op2)); in fast_not_equal_function()
913 compare_function(result, op1, op2 TSRMLS_CC); in fast_not_equal_function()
917 static zend_always_inline int fast_is_smaller_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_is_smaller_function()
920 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_is_smaller_function()
921 return Z_LVAL_P(op1) < Z_LVAL_P(op2); in fast_is_smaller_function()
922 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_is_smaller_function()
923 return ((double)Z_LVAL_P(op1)) < Z_DVAL_P(op2); in fast_is_smaller_function()
926 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_is_smaller_function()
927 return Z_DVAL_P(op1) < Z_DVAL_P(op2); in fast_is_smaller_function()
928 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_is_smaller_function()
929 return Z_DVAL_P(op1) < ((double)Z_LVAL_P(op2)); in fast_is_smaller_function()
932 compare_function(result, op1, op2 TSRMLS_CC); in fast_is_smaller_function()
936 static zend_always_inline int fast_is_smaller_or_equal_function(zval *result, zval *op1, zval *op2 in fast_is_smaller_or_equal_function()
939 if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_is_smaller_or_equal_function()
940 return Z_LVAL_P(op1) <= Z_LVAL_P(op2); in fast_is_smaller_or_equal_function()
941 } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_is_smaller_or_equal_function()
942 return ((double)Z_LVAL_P(op1)) <= Z_DVAL_P(op2); in fast_is_smaller_or_equal_function()
945 if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { in fast_is_smaller_or_equal_function()
946 return Z_DVAL_P(op1) <= Z_DVAL_P(op2); in fast_is_smaller_or_equal_function()
947 } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { in fast_is_smaller_or_equal_function()
948 return Z_DVAL_P(op1) <= ((double)Z_LVAL_P(op2)); in fast_is_smaller_or_equal_function()
951 compare_function(result, op1, op2 TSRMLS_CC); in fast_is_smaller_or_equal_function()