On Tue, 20 Jan 2026 at 15:28, Barel <[email protected]> wrote:

> Hi
>
> I have seen that the php-src uses some flags
> like ZEND_EXTENSIONS_HAVE_OP_ARRAY_HANDLER to optimise the code so that the
> loop that calls the op array handler is not called if no extension has set
> up an op array handler
>
> I wonder why this has not been done for
> the statement_handler, fcall_begin_handler and fcall_end_handler. This
> could be used to provide an optimised execution when no extension sets up a
> handler for these extension points
>
> Interested to know if there is a technical reason for this
>
> Cheers
>
> Carlos
>

OK, I reply to myself. I can see that these handlers are only called if the
corresponding opcodes are compiled and these are only compiled
if  ZEND_COMPILE_EXTENDED_STMT or ZEND_COMPILE_EXTENDED_FCALL are set. So
an extension that does not set these handlers would not set these compiler
flags, then there is no need to do any more optimization :-)

Reply via email to