Merge branch 'PHP-7.4'

This commit is contained in:
Nikita Popov 2019-02-07 10:06:37 +01:00
commit 7480f4ebae
2 changed files with 10 additions and 6 deletions

View File

@ -74069,8 +74069,8 @@ static const void* ZEND_FASTCALL zend_vm_get_opcode_handler_ex(uint32_t spec, co
offset += 1; offset += 1;
} else if (op->extended_value == ZEND_ASSIGN_OBJ) { } else if (op->extended_value == ZEND_ASSIGN_OBJ) {
offset += 2; offset += 2;
} else if (op->extended_value == ZEND_ASSIGN_STATIC_PROP) { } else if (op->extended_value == ZEND_ASSIGN_STATIC_PROP) {
offset += 3; offset += 3;
} }
} else if (spec & SPEC_RULE_ISSET) { } else if (spec & SPEC_RULE_ISSET) {
offset = offset * 2 + (op->extended_value & ZEND_ISEMPTY); offset = offset * 2 + (op->extended_value & ZEND_ISEMPTY);
@ -74124,11 +74124,13 @@ static const void *zend_vm_get_opcode_handler_func(zend_uchar opcode, const zend
} }
} }
else if (spec & SPEC_RULE_DIM_OBJ) { else if (spec & SPEC_RULE_DIM_OBJ) {
offset = offset * 3; offset = offset * 4;
if (op->extended_value == ZEND_ASSIGN_DIM) { if (op->extended_value == ZEND_ASSIGN_DIM) {
offset += 1; offset += 1;
} else if (op->extended_value == ZEND_ASSIGN_OBJ) { } else if (op->extended_value == ZEND_ASSIGN_OBJ) {
offset += 2; offset += 2;
} else if (op->extended_value == ZEND_ASSIGN_STATIC_PROP) {
offset += 3;
} }
} }
else if (spec & SPEC_RULE_ISSET) offset = offset * 2 + (op->extended_value & ZEND_ISEMPTY); else if (spec & SPEC_RULE_ISSET) offset = offset * 2 + (op->extended_value & ZEND_ISEMPTY);

View File

@ -2772,8 +2772,8 @@ function gen_vm($def, $skel) {
out($f, "\t\t\t\toffset += 1;\n"); out($f, "\t\t\t\toffset += 1;\n");
out($f, "\t\t\t} else if (op->extended_value == ZEND_ASSIGN_OBJ) {\n"); out($f, "\t\t\t} else if (op->extended_value == ZEND_ASSIGN_OBJ) {\n");
out($f, "\t\t\t\toffset += 2;\n"); out($f, "\t\t\t\toffset += 2;\n");
out($f, "\t\t} else if (op->extended_value == ZEND_ASSIGN_STATIC_PROP) {\n"); out($f, "\t\t\t} else if (op->extended_value == ZEND_ASSIGN_STATIC_PROP) {\n");
out($f, "\t\t\toffset += 3;\n"); out($f, "\t\t\t\toffset += 3;\n");
out($f, "\t\t\t}\n"); out($f, "\t\t\t}\n");
$else = "} else "; $else = "} else ";
} }
@ -2870,11 +2870,13 @@ function gen_vm($def, $skel) {
} }
if (isset($used_extra_spec["DIM_OBJ"])) { if (isset($used_extra_spec["DIM_OBJ"])) {
out($f, "\t\t{$else}if (spec & SPEC_RULE_DIM_OBJ) {\n"); out($f, "\t\t{$else}if (spec & SPEC_RULE_DIM_OBJ) {\n");
out($f, "\t\t\toffset = offset * 3;\n"); out($f, "\t\t\toffset = offset * 4;\n");
out($f, "\t\t\tif (op->extended_value == ZEND_ASSIGN_DIM) {\n"); out($f, "\t\t\tif (op->extended_value == ZEND_ASSIGN_DIM) {\n");
out($f, "\t\t\t\toffset += 1;\n"); out($f, "\t\t\t\toffset += 1;\n");
out($f, "\t\t\t} else if (op->extended_value == ZEND_ASSIGN_OBJ) {\n"); out($f, "\t\t\t} else if (op->extended_value == ZEND_ASSIGN_OBJ) {\n");
out($f, "\t\t\t\toffset += 2;\n"); out($f, "\t\t\t\toffset += 2;\n");
out($f, "\t\t\t} else if (op->extended_value == ZEND_ASSIGN_STATIC_PROP) {\n");
out($f, "\t\t\t\toffset += 3;\n");
out($f, "\t\t\t}\n"); out($f, "\t\t\t}\n");
out($f, "\t\t}\n"); out($f, "\t\t}\n");
$else = "else "; $else = "else ";