summaryrefslogtreecommitdiff
path: root/Zend/zend_vm_execute.h
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/zend_vm_execute.h')
-rw-r--r--Zend/zend_vm_execute.h128
1 files changed, 80 insertions, 48 deletions
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index f323381f48..e745dd0850 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -9325,9 +9325,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_TMP_CONST_HANDLER(ZEND_OPCO
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -10212,9 +10214,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -11100,9 +11104,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -12568,9 +12574,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -15828,9 +15836,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_VAR_CONST_HANDLER(ZEND_OPCO
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -18196,9 +18206,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -20525,9 +20537,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -24004,9 +24018,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -25668,9 +25684,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER(ZEND_O
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -27098,9 +27116,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMP_HANDLER(ZEND_OPC
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -28434,9 +28454,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_UNUSED_VAR_HANDLER(ZEND_OPC
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -30198,9 +30220,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_HANDLER(ZEND_OPCO
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -33459,9 +33483,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_HANDLER(ZEND_OPCOD
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -35593,9 +35619,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -37782,9 +37810,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}
@@ -40972,9 +41002,11 @@ static int ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_H
}
} while (nested);
- ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
- EX_T(opline->result.var).var.fcall_returned_reference = 0;
- EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ if (RETURN_VALUE_USED(opline)) {
+ ALLOC_INIT_ZVAL(EX_T(opline->result.var).var.ptr);
+ EX_T(opline->result.var).var.fcall_returned_reference = 0;
+ EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
+ }
ZEND_VM_NEXT_OPCODE();
}