From: Xinchen Hui Date: Wed, 15 Jul 2015 02:55:41 +0000 (+0800) Subject: Improve the conditions(save one comparison) X-Git-Tag: php-7.0.0beta2~6^2~73 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d0bea17d2ed97d889f919e92b93f922b4dff8e9e;p=php Improve the conditions(save one comparison) --- diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index 8419dccbc6..a229ba8f73 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -49553,10 +49553,7 @@ ZEND_API int zend_vm_call_opcode_handler(zend_execute_data* ex) LOAD_OPLINE(); #if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG) ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - ret = (opline) ? execute_data != ex : -1; - if (ret == 1 && execute_data->prev_execute_data != ex) { - ret = 2;; - } + ret = opline? ((execute_data != ex)? (int)(execute_data->prev_execute_data != ex) + 1 : 0) : -1; #else ret = ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); #endif diff --git a/Zend/zend_vm_gen.php b/Zend/zend_vm_gen.php index ce4a32185f..ed194486a4 100644 --- a/Zend/zend_vm_gen.php +++ b/Zend/zend_vm_gen.php @@ -1606,10 +1606,7 @@ function gen_vm($def, $skel) { out($f, "\tLOAD_OPLINE();\n"); out($f,"#if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG)\n"); out($f, "\t((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);\n"); - out($f, "\tret = (opline) ? execute_data != ex : -1;\n"); - out($f, "\tif (ret == 1 && execute_data->prev_execute_data != ex) {\n"); - out($f, "\t\tret = 2;;\n"); - out($f, "\t}\n"); + out($f, "\tret = opline? ((execute_data != ex)? (int)(execute_data->prev_execute_data != ex) + 1 : 0) : -1;\n"); out($f, "#else\n"); out($f, "\tret = ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);\n"); out($f, "#endif\n");