Lines Matching refs:op2
1872 static zend_result zend_ffi_cdata_do_operation(uint8_t opcode, zval *result, zval *op1, zval *op2) … in zend_ffi_cdata_do_operation() argument
1877 ZVAL_DEREF(op2); in zend_ffi_cdata_do_operation()
1884 offset = zval_get_long(op2); in zend_ffi_cdata_do_operation()
1891 if (Z_TYPE_P(op2) == IS_OBJECT && Z_OBJCE_P(op2) == zend_ffi_cdata_ce) { in zend_ffi_cdata_do_operation()
1892 zend_ffi_cdata *cdata2 = (zend_ffi_cdata*)Z_OBJ_P(op2); in zend_ffi_cdata_do_operation()
1920 offset = zval_get_long(op2); in zend_ffi_cdata_do_operation()
1928 } else if (Z_TYPE_P(op2) == IS_OBJECT && Z_OBJCE_P(op2) == zend_ffi_cdata_ce) { in zend_ffi_cdata_do_operation()
1929 zend_ffi_cdata *cdata2 = (zend_ffi_cdata*)Z_OBJ_P(op2); in zend_ffi_cdata_do_operation()
7171 #define zend_ffi_expr_math(val, op2, OP) do { \ argument
7173 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7174 val->kind = MAX(val->kind, op2->kind); \
7175 val->u64 = val->u64 OP op2->u64; \
7176 } else if (op2->kind == ZEND_FFI_VAL_INT32) { \
7177 val->u64 = val->u64 OP op2->i64; \
7178 } else if (op2->kind == ZEND_FFI_VAL_INT64) { \
7179 val->u64 = val->u64 OP op2->i64; \
7180 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7181 val->kind = op2->kind; \
7182 val->d = (zend_ffi_double)val->u64 OP op2->d; \
7183 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7184 val->u64 = val->u64 OP op2->ch; \
7189 if (op2->kind == ZEND_FFI_VAL_UINT32) { \
7190 val->i64 = val->i64 OP op2->u64; \
7191 } else if (op2->kind == ZEND_FFI_VAL_UINT64) { \
7192 val->i64 = val->i64 OP op2->u64; \
7193 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7194 val->kind = MAX(val->kind, op2->kind); \
7195 val->i64 = val->i64 OP op2->i64; \
7196 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7197 val->kind = op2->kind; \
7198 val->d = (zend_ffi_double)val->i64 OP op2->d; \
7199 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7200 val->i64 = val->i64 OP op2->ch; \
7205 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7206 val->d = val->d OP (zend_ffi_double)op2->u64; \
7207 } else if (op2->kind == ZEND_FFI_VAL_INT32 ||op2->kind == ZEND_FFI_VAL_INT64) { \
7208 val->d = val->d OP (zend_ffi_double)op2->i64; \
7209 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7210 val->kind = MAX(val->kind, op2->kind); \
7211 val->d = val->d OP op2->d; \
7212 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7213 val->d = val->d OP (zend_ffi_double)op2->ch; \
7218 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7219 val->kind = op2->kind; \
7220 val->u64 = val->ch OP op2->u64; \
7221 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7223 val->i64 = val->ch OP op2->i64; \
7224 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7225 val->kind = op2->kind; \
7226 val->d = (zend_ffi_double)val->ch OP op2->d; \
7227 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7228 val->ch = val->ch OP op2->ch; \
7237 #define zend_ffi_expr_int_math(val, op2, OP) do { \ argument
7239 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7240 val->kind = MAX(val->kind, op2->kind); \
7241 val->u64 = val->u64 OP op2->u64; \
7242 } else if (op2->kind == ZEND_FFI_VAL_INT32) { \
7243 val->u64 = val->u64 OP op2->i64; \
7244 } else if (op2->kind == ZEND_FFI_VAL_INT64) { \
7245 val->u64 = val->u64 OP op2->i64; \
7246 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7247 val->u64 = val->u64 OP (uint64_t)op2->d; \
7248 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7249 val->u64 = val->u64 OP op2->ch; \
7254 if (op2->kind == ZEND_FFI_VAL_UINT32) { \
7255 val->i64 = val->i64 OP op2->u64; \
7256 } else if (op2->kind == ZEND_FFI_VAL_UINT64) { \
7257 val->i64 = val->i64 OP op2->u64; \
7258 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7259 val->kind = MAX(val->kind, op2->kind); \
7260 val->i64 = val->i64 OP op2->i64; \
7261 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7262 val->u64 = val->u64 OP (int64_t)op2->d; \
7263 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7264 val->i64 = val->i64 OP op2->ch; \
7269 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7270 val->kind = op2->kind; \
7271 val->u64 = (uint64_t)val->d OP op2->u64; \
7272 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7273 val->kind = op2->kind; \
7274 val->i64 = (int64_t)val->d OP op2->i64; \
7279 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7280 val->kind = op2->kind; \
7281 val->u64 = (uint64_t)val->ch OP op2->u64; \
7282 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7283 val->kind = op2->kind; \
7284 val->i64 = (int64_t)val->ch OP op2->u64; \
7285 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7286 val->ch = val->ch OP op2->ch; \
7295 #define zend_ffi_expr_cmp(val, op2, OP) do { \ argument
7297 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7299 val->i64 = val->u64 OP op2->u64; \
7300 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7302 val->i64 = val->u64 OP op2->u64; /*signed/unsigned */ \
7303 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7305 val->i64 = (zend_ffi_double)val->u64 OP op2->d; \
7306 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7308 val->i64 = val->u64 OP op2->d; \
7313 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7315 val->i64 = val->i64 OP op2->i64; /* signed/unsigned */ \
7316 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7318 val->i64 = val->i64 OP op2->i64; \
7319 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7321 val->i64 = (zend_ffi_double)val->i64 OP op2->d; \
7322 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7324 val->i64 = val->i64 OP op2->ch; \
7329 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7331 val->i64 = val->d OP (zend_ffi_double)op2->u64; \
7332 } else if (op2->kind == ZEND_FFI_VAL_INT32 ||op2->kind == ZEND_FFI_VAL_INT64) { \
7334 val->i64 = val->d OP (zend_ffi_double)op2->i64; \
7335 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7337 val->i64 = val->d OP op2->d; \
7338 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7340 val->i64 = val->d OP (zend_ffi_double)op2->ch; \
7345 if (op2->kind == ZEND_FFI_VAL_UINT32 || op2->kind == ZEND_FFI_VAL_UINT64) { \
7347 val->i64 = val->ch OP op2->i64; /* signed/unsigned */ \
7348 } else if (op2->kind == ZEND_FFI_VAL_INT32 || op2->kind == ZEND_FFI_VAL_INT64) { \
7350 val->i64 = val->ch OP op2->i64; \
7351 …} else if (op2->kind == ZEND_FFI_VAL_FLOAT || op2->kind == ZEND_FFI_VAL_DOUBLE || op2->kind == ZEN…
7353 val->i64 = (zend_ffi_double)val->ch OP op2->d; \
7354 } else if (op2->kind == ZEND_FFI_VAL_CHAR) { \
7356 val->i64 = val->ch OP op2->ch; \
7365 void zend_ffi_expr_conditional(zend_ffi_val *val, zend_ffi_val *op2, zend_ffi_val *op3) /* {{{ */ argument
7370 *val = *op2;
7378 void zend_ffi_expr_bool_or(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7381 zend_ffi_expr_bool(op2);
7382 if (val->kind == ZEND_FFI_VAL_INT32 && op2->kind == ZEND_FFI_VAL_INT32) {
7383 val->i64 = val->i64 || op2->i64;
7390 void zend_ffi_expr_bool_and(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7393 zend_ffi_expr_bool(op2);
7394 if (val->kind == ZEND_FFI_VAL_INT32 && op2->kind == ZEND_FFI_VAL_INT32) {
7395 val->i64 = val->i64 && op2->i64;
7402 void zend_ffi_expr_bw_or(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7404 zend_ffi_expr_int_math(val, op2, |);
7408 void zend_ffi_expr_bw_xor(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7410 zend_ffi_expr_int_math(val, op2, ^);
7414 void zend_ffi_expr_bw_and(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7416 zend_ffi_expr_int_math(val, op2, &);
7420 void zend_ffi_expr_is_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7422 zend_ffi_expr_cmp(val, op2, ==);
7426 void zend_ffi_expr_is_not_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7428 zend_ffi_expr_cmp(val, op2, !=);
7432 void zend_ffi_expr_is_less(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7434 zend_ffi_expr_cmp(val, op2, <);
7438 void zend_ffi_expr_is_greater(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7440 zend_ffi_expr_cmp(val, op2, >);
7444 void zend_ffi_expr_is_less_or_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7446 zend_ffi_expr_cmp(val, op2, <=);
7450 void zend_ffi_expr_is_greater_or_equal(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7452 zend_ffi_expr_cmp(val, op2, >=);
7456 void zend_ffi_expr_shift_left(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7458 zend_ffi_expr_int_math(val, op2, <<);
7462 void zend_ffi_expr_shift_right(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7464 zend_ffi_expr_int_math(val, op2, >>);
7468 void zend_ffi_expr_add(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7470 zend_ffi_expr_math(val, op2, +);
7474 void zend_ffi_expr_sub(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7476 zend_ffi_expr_math(val, op2, -);
7480 void zend_ffi_expr_mul(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7482 zend_ffi_expr_math(val, op2, *);
7486 void zend_ffi_expr_div(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7488 zend_ffi_expr_math(val, op2, /);
7492 void zend_ffi_expr_mod(zend_ffi_val *val, zend_ffi_val *op2) /* {{{ */ argument
7494 zend_ffi_expr_int_math(val, op2, %); // ???