]> granicus.if.org Git - php/commitdiff
Add comment to explaining the new check
authorXinchen Hui <laruence@php.net>
Wed, 8 Jul 2015 09:44:54 +0000 (17:44 +0800)
committerXinchen Hui <laruence@php.net>
Wed, 8 Jul 2015 09:44:54 +0000 (17:44 +0800)
ext/opcache/Optimizer/optimize_temp_vars_5.c

index de170d2295e228f40243f5921273fc2dc3fd2268..f60f61cb4521808414413460256c2900b9b131f3 100644 (file)
@@ -152,6 +152,9 @@ void optimize_temporary_variables(zend_op_array *op_array, zend_optimizer_ctx *c
                        currT = VAR_NUM(ZEND_RESULT(opline).var) - offset;
                        if (valid_T[currT]) {
                                if (start_of_T[currT] == opline) {
+                                       /* ZEND_FAST_CALL can not share temporary var with others
+                                        * since the fast_var could also be set by ZEND_HANDLE_EXCEPTION
+                                        * which could be ahead of it */
                                        if (opline->opcode != ZEND_FAST_CALL) {
                                                taken_T[map_T[currT]] = 0;
                                        }