Lines Matching refs:op2

1786 static int zend_ffi_cdata_do_operation(zend_uchar opcode, zval *result, zval *op1, zval *op2) /* {{…  in zend_ffi_cdata_do_operation()  argument
1791 ZVAL_DEREF(op2); in zend_ffi_cdata_do_operation()
1798 offset = zval_get_long(op2); in zend_ffi_cdata_do_operation()
1805 if (Z_TYPE_P(op2) == IS_OBJECT && Z_OBJCE_P(op2) == zend_ffi_cdata_ce) { in zend_ffi_cdata_do_operation()
1806 zend_ffi_cdata *cdata2 = (zend_ffi_cdata*)Z_OBJ_P(op2); in zend_ffi_cdata_do_operation()
1834 offset = zval_get_long(op2); in zend_ffi_cdata_do_operation()
1842 } else if (Z_TYPE_P(op2) == IS_OBJECT && Z_OBJCE_P(op2) == zend_ffi_cdata_ce) { in zend_ffi_cdata_do_operation()
1843 zend_ffi_cdata *cdata2 = (zend_ffi_cdata*)Z_OBJ_P(op2); in zend_ffi_cdata_do_operation()
7019 #define zend_ffi_expr_math(val, op2, OP) do { \ argument
7021 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7022 val->kind = MAX(val->kind, op2->kind); \
7023 val->u64 = val->u64 OP op2->u64; \
7024 } else if (op2->kind == ZEND_FFI_VAL_INT32) { \
7025 val->u64 = val->u64 OP op2->i64; \
7026 } else if (op2->kind == ZEND_FFI_VAL_INT64) { \
7027 val->u64 = val->u64 OP op2->i64; \
7028 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7029 val->kind = op2->kind; \
7030 val->d = (zend_ffi_double)val->u64 OP op2->d; \
7031 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7032 val->u64 = val->u64 OP op2->ch; \
7037 if (op2->kind == ZEND_FFI_VAL_UINT32) { \
7038 val->i64 = val->i64 OP op2->u64; \
7039 } else if (op2->kind == ZEND_FFI_VAL_UINT64) { \
7040 val->i64 = val->i64 OP op2->u64; \
7041 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7042 val->kind = MAX(val->kind, op2->kind); \
7043 val->i64 = val->i64 OP op2->i64; \
7044 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7045 val->kind = op2->kind; \
7046 val->d = (zend_ffi_double)val->i64 OP op2->d; \
7047 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7048 val->i64 = val->i64 OP op2->ch; \
7053 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7054 val->d = val->d OP (zend_ffi_double)op2->u64; \
7055 } else if (op2->kind == ZEND_FFI_VAL_INT32 ||op2->kind == ZEND_FFI_VAL_INT64) { \
7056 val->d = val->d OP (zend_ffi_double)op2->i64; \
7057 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7058 val->kind = MAX(val->kind, op2->kind); \
7059 val->d = val->d OP op2->d; \
7060 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7061 val->d = val->d OP (zend_ffi_double)op2->ch; \
7066 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7067 val->kind = op2->kind; \
7068 val->u64 = val->ch OP op2->u64; \
7069 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7071 val->i64 = val->ch OP op2->i64; \
7072 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7073 val->kind = op2->kind; \
7074 val->d = (zend_ffi_double)val->ch OP op2->d; \
7075 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7076 val->ch = val->ch OP op2->ch; \
7085 #define zend_ffi_expr_int_math(val, op2, OP) do { \ argument
7087 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7088 val->kind = MAX(val->kind, op2->kind); \
7089 val->u64 = val->u64 OP op2->u64; \
7090 } else if (op2->kind == ZEND_FFI_VAL_INT32) { \
7091 val->u64 = val->u64 OP op2->i64; \
7092 } else if (op2->kind == ZEND_FFI_VAL_INT64) { \
7093 val->u64 = val->u64 OP op2->i64; \
7094 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7095 val->u64 = val->u64 OP (uint64_t)op2->d; \
7096 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7097 val->u64 = val->u64 OP op2->ch; \
7102 if (op2->kind == ZEND_FFI_VAL_UINT32) { \
7103 val->i64 = val->i64 OP op2->u64; \
7104 } else if (op2->kind == ZEND_FFI_VAL_UINT64) { \
7105 val->i64 = val->i64 OP op2->u64; \
7106 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7107 val->kind = MAX(val->kind, op2->kind); \
7108 val->i64 = val->i64 OP op2->i64; \
7109 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7110 val->u64 = val->u64 OP (int64_t)op2->d; \
7111 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7112 val->i64 = val->i64 OP op2->ch; \
7117 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7118 val->kind = op2->kind; \
7119 val->u64 = (uint64_t)val->d OP op2->u64; \
7120 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7121 val->kind = op2->kind; \
7122 val->i64 = (int64_t)val->d OP op2->i64; \
7127 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7128 val->kind = op2->kind; \
7129 val->u64 = (uint64_t)val->ch OP op2->u64; \
7130 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7131 val->kind = op2->kind; \
7132 val->i64 = (int64_t)val->ch OP op2->u64; \
7133 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7134 val->ch = val->ch OP op2->ch; \
7143 #define zend_ffi_expr_cmp(val, op2, OP) do { \ argument
7145 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7147 val->i64 = val->u64 OP op2->u64; \
7148 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7150 val->i64 = val->u64 OP op2->u64; /*signed/unsigned */ \
7151 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7153 val->i64 = (zend_ffi_double)val->u64 OP op2->d; \
7154 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7156 val->i64 = val->u64 OP op2->d; \
7161 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7163 val->i64 = val->i64 OP op2->i64; /* signed/unsigned */ \
7164 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7166 val->i64 = val->i64 OP op2->i64; \
7167 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7169 val->i64 = (zend_ffi_double)val->i64 OP op2->d; \
7170 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7172 val->i64 = val->i64 OP op2->ch; \
7177 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7179 val->i64 = val->d OP (zend_ffi_double)op2->u64; \
7180 } else if (op2->kind == ZEND_FFI_VAL_INT32 ||op2->kind == ZEND_FFI_VAL_INT64) { \
7182 val->i64 = val->d OP (zend_ffi_double)op2->i64; \
7183 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7185 val->i64 = val->d OP op2->d; \
7186 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7188 val->i64 = val->d OP (zend_ffi_double)op2->ch; \
7193 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7195 val->i64 = val->ch OP op2->i64; /* signed/unsigned */ \
7196 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7198 val->i64 = val->ch OP op2->i64; \
7199 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7201 val->i64 = (zend_ffi_double)val->ch OP op2->d; \
7202 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7204 val->i64 = val->ch OP op2->ch; \
7213 void zend_ffi_expr_conditional(zend_ffi_val *val, zend_ffi_val *op2, zend_ffi_val *op3) /* {{{ */ argument
7218 *val = *op2;
7226 void zend_ffi_expr_bool_or(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7229 zend_ffi_expr_bool(op2);
7230 if (val->kind == ZEND_FFI_VAL_INT32 && op2->kind == ZEND_FFI_VAL_INT32) {
7231 val->i64 = val->i64 || op2->i64;
7238 void zend_ffi_expr_bool_and(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7241 zend_ffi_expr_bool(op2);
7242 if (val->kind == ZEND_FFI_VAL_INT32 && op2->kind == ZEND_FFI_VAL_INT32) {
7243 val->i64 = val->i64 && op2->i64;
7250 void zend_ffi_expr_bw_or(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7252 zend_ffi_expr_int_math(val, op2, |);
7256 void zend_ffi_expr_bw_xor(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7258 zend_ffi_expr_int_math(val, op2, ^);
7262 void zend_ffi_expr_bw_and(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7264 zend_ffi_expr_int_math(val, op2, &);
7268 void zend_ffi_expr_is_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7270 zend_ffi_expr_cmp(val, op2, ==);
7274 void zend_ffi_expr_is_not_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7276 zend_ffi_expr_cmp(val, op2, !=);
7280 void zend_ffi_expr_is_less(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7282 zend_ffi_expr_cmp(val, op2, <);
7286 void zend_ffi_expr_is_greater(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7288 zend_ffi_expr_cmp(val, op2, >);
7292 void zend_ffi_expr_is_less_or_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7294 zend_ffi_expr_cmp(val, op2, <=);
7298 void zend_ffi_expr_is_greater_or_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7300 zend_ffi_expr_cmp(val, op2, >=);
7304 void zend_ffi_expr_shift_left(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7306 zend_ffi_expr_int_math(val, op2, <<);
7310 void zend_ffi_expr_shift_right(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7312 zend_ffi_expr_int_math(val, op2, >>);
7316 void zend_ffi_expr_add(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7318 zend_ffi_expr_math(val, op2, +);
7322 void zend_ffi_expr_sub(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7324 zend_ffi_expr_math(val, op2, -);
7328 void zend_ffi_expr_mul(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7330 zend_ffi_expr_math(val, op2, *);
7334 void zend_ffi_expr_div(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7336 zend_ffi_expr_math(val, op2, /);
7340 void zend_ffi_expr_mod(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7342 zend_ffi_expr_int_math(val, op2, %); // ???