Lines Matching refs:op1
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 pow_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
51 ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
52 ZEND_API int mod_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
53 ZEND_API int boolean_xor_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
54 ZEND_API int boolean_not_function(zval *result, zval *op1 TSRMLS_DC);
55 ZEND_API int bitwise_not_function(zval *result, zval *op1 TSRMLS_DC);
56 ZEND_API int bitwise_or_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
57 ZEND_API int bitwise_and_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
58 ZEND_API int bitwise_xor_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
59 ZEND_API int shift_left_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
60 ZEND_API int shift_right_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
61 ZEND_API int concat_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
63 ZEND_API int is_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
64 ZEND_API int is_identical_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
65 ZEND_API int is_not_identical_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
66 ZEND_API int is_not_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
67 ZEND_API int is_smaller_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
68 ZEND_API int is_smaller_or_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
324 ZEND_API int increment_function(zval *op1);
340 ZEND_API int add_char_to_string(zval *result, const zval *op1, const zval *op2);
341 ZEND_API int add_string_to_string(zval *result, const zval *op1, const zval *op2);
348 ZEND_API int compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
349 ZEND_API int numeric_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
350 ZEND_API int string_compare_function_ex(zval *result, zval *op1, zval *op2, zend_bool case_insensit…
351 ZEND_API int string_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
352 ZEND_API int string_case_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
354 ZEND_API int string_locale_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
510 static zend_always_inline int fast_increment_function(zval *op1) in fast_increment_function() argument
512 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_increment_function()
522 : "r"(&op1->value), in fast_increment_function()
535 : "r"(&op1->value), in fast_increment_function()
540 if (UNEXPECTED(Z_LVAL_P(op1) == LONG_MAX)) { in fast_increment_function()
542 Z_DVAL_P(op1) = (double)LONG_MAX + 1.0; in fast_increment_function()
543 Z_TYPE_P(op1) = IS_DOUBLE; in fast_increment_function()
545 Z_LVAL_P(op1)++; in fast_increment_function()
550 return increment_function(op1); in fast_increment_function()
553 static zend_always_inline int fast_decrement_function(zval *op1) in fast_decrement_function() argument
555 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_decrement_function()
565 : "r"(&op1->value), in fast_decrement_function()
578 : "r"(&op1->value), in fast_decrement_function()
583 if (UNEXPECTED(Z_LVAL_P(op1) == LONG_MIN)) { in fast_decrement_function()
585 Z_DVAL_P(op1) = (double)LONG_MIN - 1.0; in fast_decrement_function()
586 Z_TYPE_P(op1) = IS_DOUBLE; in fast_decrement_function()
588 Z_LVAL_P(op1)--; in fast_decrement_function()
593 return decrement_function(op1); in fast_decrement_function()
596 static zend_always_inline int fast_add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_add_function() argument
598 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_add_function()
617 "r"(&op1->value), in fast_add_function()
640 "r"(&op1->value), in fast_add_function()
653 if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) == (Z_LVAL_P(op2) & LONG_SIGN_MASK) in fast_add_function()
654 && (Z_LVAL_P(op1) & LONG_SIGN_MASK) != ((Z_LVAL_P(op1) + Z_LVAL_P(op2)) & LONG_SIGN_MASK))) { in fast_add_function()
655 Z_DVAL_P(result) = (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2); in fast_add_function()
658 Z_LVAL_P(result) = Z_LVAL_P(op1) + Z_LVAL_P(op2); in fast_add_function()
664 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) + Z_DVAL_P(op2); in fast_add_function()
668 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_add_function()
670 Z_DVAL_P(result) = Z_DVAL_P(op1) + Z_DVAL_P(op2); in fast_add_function()
674 Z_DVAL_P(result) = Z_DVAL_P(op1) + ((double)Z_LVAL_P(op2)); in fast_add_function()
679 return add_function(result, op1, op2 TSRMLS_CC); in fast_add_function()
682 static zend_always_inline int fast_sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_sub_function() argument
684 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_sub_function()
707 "r"(&op1->value), in fast_sub_function()
734 "r"(&op1->value), in fast_sub_function()
741 Z_LVAL_P(result) = Z_LVAL_P(op1) - Z_LVAL_P(op2); in fast_sub_function()
743 if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(op2) & LONG_SIGN_MASK) in fast_sub_function()
744 && (Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(result) & LONG_SIGN_MASK))) { in fast_sub_function()
745 Z_DVAL_P(result) = (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2); in fast_sub_function()
753 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) - Z_DVAL_P(op2); in fast_sub_function()
757 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_sub_function()
759 Z_DVAL_P(result) = Z_DVAL_P(op1) - Z_DVAL_P(op2); in fast_sub_function()
763 Z_DVAL_P(result) = Z_DVAL_P(op1) - ((double)Z_LVAL_P(op2)); in fast_sub_function()
768 return sub_function(result, op1, op2 TSRMLS_CC); in fast_sub_function()
771 static zend_always_inline int fast_mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_mul_function() argument
773 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_mul_function()
777 …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()
781 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) * Z_DVAL_P(op2); in fast_mul_function()
785 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_mul_function()
787 Z_DVAL_P(result) = Z_DVAL_P(op1) * Z_DVAL_P(op2); in fast_mul_function()
791 Z_DVAL_P(result) = Z_DVAL_P(op1) * ((double)Z_LVAL_P(op2)); in fast_mul_function()
796 return mul_function(result, op1, op2 TSRMLS_CC); in fast_mul_function()
799 static zend_always_inline int fast_div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_div_function() argument
802 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG) && 0) { in fast_div_function()
809 } else if (UNEXPECTED(Z_LVAL_P(op2) == -1 && Z_LVAL_P(op1) == LONG_MIN)) { in fast_div_function()
813 } else if (EXPECTED(Z_LVAL_P(op1) % Z_LVAL_P(op2) == 0)) { in fast_div_function()
815 Z_LVAL_P(result) = Z_LVAL_P(op1) / Z_LVAL_P(op2); in fast_div_function()
818 Z_DVAL_P(result) = ((double) Z_LVAL_P(op1)) / ((double)Z_LVAL_P(op2)); in fast_div_function()
829 Z_DVAL_P(result) = ((double)Z_LVAL_P(op1)) / Z_DVAL_P(op2); in fast_div_function()
833 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE) && 0) { in fast_div_function()
841 Z_DVAL_P(result) = Z_DVAL_P(op1) / Z_DVAL_P(op2); in fast_div_function()
851 Z_DVAL_P(result) = Z_DVAL_P(op1) / ((double)Z_LVAL_P(op2)); in fast_div_function()
857 return div_function(result, op1, op2 TSRMLS_CC); in fast_div_function()
860 static zend_always_inline int fast_mod_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_mod_function() argument
862 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_mod_function()
875 Z_LVAL_P(result) = Z_LVAL_P(op1) % Z_LVAL_P(op2); in fast_mod_function()
880 return mod_function(result, op1, op2 TSRMLS_CC); in fast_mod_function()
883 static zend_always_inline int fast_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_equal_function() argument
885 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_equal_function()
887 return Z_LVAL_P(op1) == Z_LVAL_P(op2); in fast_equal_function()
889 return ((double)Z_LVAL_P(op1)) == Z_DVAL_P(op2); in fast_equal_function()
891 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_equal_function()
893 return Z_DVAL_P(op1) == Z_DVAL_P(op2); in fast_equal_function()
895 return Z_DVAL_P(op1) == ((double)Z_LVAL_P(op2)); in fast_equal_function()
898 compare_function(result, op1, op2 TSRMLS_CC); in fast_equal_function()
902 static zend_always_inline int fast_not_equal_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_not_equal_function() argument
904 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_not_equal_function()
906 return Z_LVAL_P(op1) != Z_LVAL_P(op2); in fast_not_equal_function()
908 return ((double)Z_LVAL_P(op1)) != Z_DVAL_P(op2); in fast_not_equal_function()
910 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_not_equal_function()
912 return Z_DVAL_P(op1) != Z_DVAL_P(op2); in fast_not_equal_function()
914 return Z_DVAL_P(op1) != ((double)Z_LVAL_P(op2)); in fast_not_equal_function()
917 compare_function(result, op1, op2 TSRMLS_CC); in fast_not_equal_function()
921 static zend_always_inline int fast_is_smaller_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) in fast_is_smaller_function() argument
923 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_is_smaller_function()
925 return Z_LVAL_P(op1) < Z_LVAL_P(op2); in fast_is_smaller_function()
927 return ((double)Z_LVAL_P(op1)) < Z_DVAL_P(op2); in fast_is_smaller_function()
929 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_is_smaller_function()
931 return Z_DVAL_P(op1) < Z_DVAL_P(op2); in fast_is_smaller_function()
933 return Z_DVAL_P(op1) < ((double)Z_LVAL_P(op2)); in fast_is_smaller_function()
936 compare_function(result, op1, op2 TSRMLS_CC); in fast_is_smaller_function()
940 static zend_always_inline int fast_is_smaller_or_equal_function(zval *result, zval *op1, zval *op2 … in fast_is_smaller_or_equal_function() argument
942 if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { in fast_is_smaller_or_equal_function()
944 return Z_LVAL_P(op1) <= Z_LVAL_P(op2); in fast_is_smaller_or_equal_function()
946 return ((double)Z_LVAL_P(op1)) <= Z_DVAL_P(op2); in fast_is_smaller_or_equal_function()
948 } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { in fast_is_smaller_or_equal_function()
950 return Z_DVAL_P(op1) <= Z_DVAL_P(op2); in fast_is_smaller_or_equal_function()
952 return Z_DVAL_P(op1) <= ((double)Z_LVAL_P(op2)); in fast_is_smaller_or_equal_function()
955 compare_function(result, op1, op2 TSRMLS_CC); in fast_is_smaller_or_equal_function()
960 if (Z_TYPE_P(op1) == IS_OBJECT && Z_OBJ_HANDLER_P(op1, do_operation)) { \
961 if (SUCCESS == Z_OBJ_HANDLER_P(op1, do_operation)(opcode, result, op1, op2 TSRMLS_CC)) { \
965 if (SUCCESS == Z_OBJ_HANDLER_P(op2, do_operation)(opcode, result, op1, op2 TSRMLS_CC)) { \
971 if (Z_TYPE_P(op1) == IS_OBJECT && Z_OBJ_HANDLER_P(op1, do_operation) \
972 && SUCCESS == Z_OBJ_HANDLER_P(op1, do_operation)(opcode, result, op1, NULL TSRMLS_CC) \