You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ir_base[115] is in use list of ir_base[1]
php-8.4/ext/opcache/jit/ir/ir_check.c:394: ir_check: Assertion `ok' failed.
Aborted (core dumped)
I tracked it down to the ir_split_partially_dead_node() function in the GCM, where we try to create a clone for an IR_COPY instruction, but that instruction has an extra data op in op2, and IR tries to add uses to op2 but it's not actually a real ir_ref as far as I understand.
I'll send a PR to IR.
PHP Version
8.4+
Operating System
No response
The text was updated successfully, but these errors were encountered:
In this example code,
`ir_split_partially_dead_node()` tries to create a clone of an IR_COPY
instruction, but that instruction has an extra data op in op2.
IR tries to add uses to op2 but it's not actually a real ir_ref.
In this case, op2 is the number 1; if it were an ir_ref it would
correspond to the IR_START node, which seems wrong.
This patch adds an extra check to see if it's a real input.
Description
Running Symfony using
opcache.jit=1205
results in an assertion failure.It results in:
I reduced it to the following standalone PHP code:
This results in:
I tracked it down to the
ir_split_partially_dead_node()
function in the GCM, where we try to create a clone for an IR_COPY instruction, but that instruction has an extra data op in op2, and IR tries to add uses to op2 but it's not actually a real ir_ref as far as I understand.I'll send a PR to IR.
PHP Version
8.4+
Operating System
No response
The text was updated successfully, but these errors were encountered: