Skip to content

Commit 2100ca0

Browse files
committed
Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3: Fix zend_vm_gen.php when executed with PHP 8.5
2 parents e90b48c + d3ef806 commit 2100ca0

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

Zend/zend_vm_gen.php

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -841,7 +841,7 @@ function($matches) use ($spec, $prefix, $op1, $op2, $extra_spec, $name) {
841841
$handler = $matches[1];
842842
$opcode = $opcodes[$opnames[$handler]];
843843
$inline =
844-
ZEND_VM_KIND == ZEND_VM_KIND_HYBRID &&
844+
ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID &&
845845
isset($opcode["use"]) &&
846846
is_hot_handler($opcode["hot"], $op1, $op2, $extra_spec) &&
847847
is_hot_handler($opcodes[$opnames[$name]]["hot"], $op1, $op2, $extra_spec) ?
@@ -1079,7 +1079,7 @@ function gen_handler($f, $spec, $kind, $name, $op1, $op2, $use, $code, $lineno,
10791079
}
10801080
return;
10811081
case ZEND_VM_KIND_CALL:
1082-
if ($opcode["hot"] && ZEND_VM_KIND == ZEND_VM_KIND_HYBRID && is_hot_handler($opcode["hot"], $op1, $op2, $extra_spec)) {
1082+
if ($opcode["hot"] && ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID && is_hot_handler($opcode["hot"], $op1, $op2, $extra_spec)) {
10831083
if (isset($opcode["use"])) {
10841084
out($f,"static zend_always_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL {$spec_name}_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS)\n");
10851085
$additional_func = true;
@@ -2341,15 +2341,15 @@ function gen_vm_opcodes_header(
23412341
$str .= "#define ZEND_VM_KIND_SWITCH\t" . ZEND_VM_KIND_SWITCH . "\n";
23422342
$str .= "#define ZEND_VM_KIND_GOTO\t" . ZEND_VM_KIND_GOTO . "\n";
23432343
$str .= "#define ZEND_VM_KIND_HYBRID\t" . ZEND_VM_KIND_HYBRID . "\n";
2344-
if ($GLOBALS["vm_kind_name"][ZEND_VM_KIND] === "ZEND_VM_KIND_HYBRID") {
2344+
if ($GLOBALS["vm_kind_name"][ZEND_VM_GEN_KIND] === "ZEND_VM_KIND_HYBRID") {
23452345
$str .= "/* HYBRID requires support for computed GOTO and global register variables*/\n";
23462346
$str .= "#if (defined(__GNUC__) && defined(HAVE_GCC_GLOBAL_REGS))\n";
23472347
$str .= "# define ZEND_VM_KIND\t\tZEND_VM_KIND_HYBRID\n";
23482348
$str .= "#else\n";
23492349
$str .= "# define ZEND_VM_KIND\t\tZEND_VM_KIND_CALL\n";
23502350
$str .= "#endif\n";
23512351
} else {
2352-
$str .= "#define ZEND_VM_KIND\t\t" . $GLOBALS["vm_kind_name"][ZEND_VM_KIND] . "\n";
2352+
$str .= "#define ZEND_VM_KIND\t\t" . $GLOBALS["vm_kind_name"][ZEND_VM_GEN_KIND] . "\n";
23532353
}
23542354
$str .= "\n";
23552355
$str .= "#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) && !defined(__SANITIZE_ADDRESS__)\n";
@@ -2578,9 +2578,9 @@ function gen_vm($def, $skel) {
25782578
}
25792579

25802580
// Store parameters
2581-
if ((ZEND_VM_KIND == ZEND_VM_KIND_GOTO
2582-
|| ZEND_VM_KIND == ZEND_VM_KIND_SWITCH
2583-
|| (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID && $hot))
2581+
if ((ZEND_VM_GEN_KIND == ZEND_VM_KIND_GOTO
2582+
|| ZEND_VM_GEN_KIND == ZEND_VM_KIND_SWITCH
2583+
|| (ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID && $hot))
25842584
&& $param) {
25852585
foreach (explode(",", $param ) as $p) {
25862586
$p = trim($p);
@@ -2642,7 +2642,7 @@ function gen_vm($def, $skel) {
26422642
die("ERROR ($def:$lineno): Opcode with name '$op' is not defined.\n");
26432643
}
26442644
$opcodes[$opnames[$dsc['op']]]['alias'] = $op;
2645-
if (!ZEND_VM_SPEC && ZEND_VM_KIND == ZEND_VM_KIND_SWITCH) {
2645+
if (!ZEND_VM_SPEC && ZEND_VM_GEN_KIND == ZEND_VM_KIND_SWITCH) {
26462646
$code = $opnames[$op];
26472647
$opcodes[$code]['use'] = 1;
26482648
}
@@ -2755,7 +2755,7 @@ function gen_vm($def, $skel) {
27552755
out($f, "255\n};\n\n");
27562756

27572757
// Generate specialized executor
2758-
gen_executor($f, $skl, ZEND_VM_SPEC, ZEND_VM_KIND, "execute", "zend_vm_init");
2758+
gen_executor($f, $skl, ZEND_VM_SPEC, ZEND_VM_GEN_KIND, "execute", "zend_vm_init");
27592759
out($f, "\n");
27602760

27612761
// Generate zend_vm_get_opcode_handler() function
@@ -2849,7 +2849,7 @@ function gen_vm($def, $skel) {
28492849
out($f, "}\n");
28502850
out($f, "#endif\n\n");
28512851

2852-
if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) {
2852+
if (ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID) {
28532853
// Generate zend_vm_get_opcode_handler_func() function
28542854
out($f, "#if ZEND_VM_KIND == ZEND_VM_KIND_HYBRID\n");
28552855
out($f,"static const void *zend_vm_get_opcode_handler_func(uint8_t opcode, const zend_op* op)\n");
@@ -2960,10 +2960,10 @@ function gen_vm($def, $skel) {
29602960
out($f, "}\n\n");
29612961

29622962
// Generate zend_vm_call_opcode_handler() function
2963-
if (ZEND_VM_KIND == ZEND_VM_KIND_CALL || ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) {
2963+
if (ZEND_VM_GEN_KIND == ZEND_VM_KIND_CALL || ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID) {
29642964
out($f, "ZEND_API int ZEND_FASTCALL zend_vm_call_opcode_handler(zend_execute_data* ex)\n");
29652965
out($f, "{\n");
2966-
if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) {
2966+
if (ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID) {
29672967
out($f,"#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID)\n");
29682968
out($f, "\topcode_handler_t handler;\n");
29692969
out($f,"#endif\n");
@@ -2981,15 +2981,15 @@ function gen_vm($def, $skel) {
29812981
out($f, "\n");
29822982
out($f, "\tLOAD_OPLINE();\n");
29832983
out($f,"#if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG)\n");
2984-
if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) {
2984+
if (ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID) {
29852985
out($f,"#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID)\n");
29862986
out($f, "\thandler = (opcode_handler_t)zend_vm_get_opcode_handler_func(zend_user_opcodes[opline->opcode], opline);\n");
29872987
out($f, "\thandler(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);\n");
29882988
out($f, "\tif (EXPECTED(opline != &hybrid_halt_op)) {\n");
29892989
out($f,"#else\n");
29902990
}
29912991
out($f, "\t((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);\n");
2992-
if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) {
2992+
if (ZEND_VM_GEN_KIND == ZEND_VM_KIND_HYBRID) {
29932993
out($f, "\tif (EXPECTED(opline)) {\n");
29942994
out($f,"#endif\n");
29952995
} else {
@@ -3051,16 +3051,16 @@ function usage() {
30513051
$kind = substr($argv[$i], strlen("--with-vm-kind="));
30523052
switch ($kind) {
30533053
case "CALL":
3054-
define("ZEND_VM_KIND", ZEND_VM_KIND_CALL);
3054+
define("ZEND_VM_GEN_KIND", ZEND_VM_KIND_CALL);
30553055
break;
30563056
case "SWITCH":
3057-
define("ZEND_VM_KIND", ZEND_VM_KIND_SWITCH);
3057+
define("ZEND_VM_GEN_KIND", ZEND_VM_KIND_SWITCH);
30583058
break;
30593059
case "GOTO":
3060-
define("ZEND_VM_KIND", ZEND_VM_KIND_GOTO);
3060+
define("ZEND_VM_GEN_KIND", ZEND_VM_KIND_GOTO);
30613061
break;
30623062
case "HYBRID":
3063-
define("ZEND_VM_KIND", ZEND_VM_KIND_HYBRID);
3063+
define("ZEND_VM_GEN_KIND", ZEND_VM_KIND_HYBRID);
30643064
break;
30653065
default:
30663066
echo("ERROR: Invalid vm kind '$kind'\n");
@@ -3084,9 +3084,9 @@ function usage() {
30843084
}
30853085

30863086
// Using defaults
3087-
if (!defined("ZEND_VM_KIND")) {
3087+
if (!defined("ZEND_VM_GEN_KIND")) {
30883088
// Using CALL threading by default
3089-
define("ZEND_VM_KIND", ZEND_VM_KIND_HYBRID);
3089+
define("ZEND_VM_GEN_KIND", ZEND_VM_KIND_HYBRID);
30903090
}
30913091
if (!defined("ZEND_VM_SPEC")) {
30923092
// Using specialized executor by default

0 commit comments

Comments
 (0)