ZVAL_COPY_VALUE(var_ptr, ret);
}
}
+
+static void ZEND_FASTCALL zend_jit_only_vars_by_reference(zval *arg)
+{
+ ZVAL_NEW_REF(arg, arg);
+ zend_error(E_NOTICE, "Only variables should be passed by reference");
+}
| jnz >7
| SAVE_VALID_OPLINE opline
|.if X64
- | mov CARG1, E_NOTICE
- | LOAD_ADDR CARG2, "Only variables should be passed by reference"
- | EXT_CALL zend_error, r0
+ | LOAD_ZVAL_ADDR CARG1, arg_addr
+ | EXT_CALL zend_jit_only_vars_by_reference, r0
|.else
| sub r4, 8
- | push "Only variables should be passed by reference"
- | push E_NOTICE
- | EXT_CALL zend_error, r0
+ | PUSH_ZVAL_ADDR arg_addr, r0
+ | EXT_CALL zend_jit_only_vars_by_reference, r0
| add r4, 16
|.endif
if (!zend_jit_check_exception(Dst)) {
}
| SAVE_VALID_OPLINE opline
|.if X64
- | mov CARG1, E_NOTICE
- | LOAD_ADDR CARG2, "Only variables should be passed by reference"
- | EXT_CALL zend_error, r0
+ | LOAD_ZVAL_ADDR CARG1, arg_addr
+ | EXT_CALL zend_jit_only_vars_by_reference, r0
|.else
| sub r4, 8
- | push "Only variables should be passed by reference"
- | push E_NOTICE
- | EXT_CALL zend_error, r0
+ | PUSH_ZVAL_ADDR arg_addr, r0
+ | EXT_CALL zend_jit_only_vars_by_reference, r0
| add r4, 16
|.endif
if (!zend_jit_check_exception(Dst)) {