Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:129796 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by lists.php.net (Postfix) with ESMTPS id 368BA1A00BC for ; Tue, 20 Jan 2026 14:28:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1768919310; bh=hpIWvNcF9nAMsXUt4wIiM+vETi/XfAeM9HCpYQB8aqE=; h=From:Date:Subject:To:From; b=N/61uN5Q4ZvIyMeAu86iJm03d5Ml86cdEgHVBgUUCT+SgvogUC6DBf0m7T3IvB6Op K/Xrcm3y8joZdK8oZmMwCC1XDOEFDLkitoAI5ZV2/lnFuaAR5x6sPXoYy86XSLa9Ds MLS4xY+sc5OWC1IxHFmjIeMhpmGV0SlYPX1hVCL6hBYfzXemlwEGH4OymDRo3kYRjL a2N5cOf3ZH+3HTyy38GbfKnQ00BbGeWngOua3io5Ux2O2h9tWeKKI8oNaT0RYZOfqZ liJdj9j+HtQjmJ0GB8j1dXGdT6FLdP4wEFRRfmufuAcvPv3tJkYanf5hRlTm8x/vCj ciOm0QbW1goeg== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 36F6F180042 for ; Tue, 20 Jan 2026 14:28:30 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: * X-Spam-Status: No, score=1.6 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_50, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS, FORGED_GMAIL_RCVD,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Tue, 20 Jan 2026 14:28:29 +0000 (UTC) Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-42fed090e5fso3137531f8f.1 for ; Tue, 20 Jan 2026 06:28:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1768919303; cv=none; d=google.com; s=arc-20240605; b=jGUCTUMczuG1AWZxwMPgmwRFVS+TFSiIMe+2VVz1hnaBak9Hc2ZBPmi7DUCFZ3P3Fr EL3ky8qc6mL/T288wnLOWFKAavJgmcA0BOkjlpDiW4zNKjShLQSbnwE0GymYBqfC5YYc 8qgYUZxeZ67UteHBJCCOkabnMxpKrrrUHI9BMEydS57CidO2zUHb589C4vKx2a3U3uXO IyXdiD4Yf3NZoZia5HliKAapKcFIUaM+UWIU3UtIgn0NEvO+1V+y+5POTbLhpAPPmEa6 F0HqxSebjVzHJ5v7ZREqMPNtzSptzYwPnt1uNhUIJtzTg1H0T8gdBms7zhrslDZxmvAI jdMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=hpIWvNcF9nAMsXUt4wIiM+vETi/XfAeM9HCpYQB8aqE=; fh=PwvV1jWZOR90rDIG/6XexqaHJyAFBTdnFVhsS64qdEQ=; b=FwOR76fl5/KMT5YnwG8eCVyH6xqWiKJqPdfZhjwwrgTt8F6v+OhES2vx/GFbA+e2pw aEzL0fcaoCmpSCU91Ve40BtwlYh6NrakQn0o9ZepbbpFwCH1VxDsmtDNxQHu6Q+hVu9h H+s6MlFMR518yhg1yRfmVS+AHHfqmjQgFUrZJQejrCqJly8LwyKGbtclXgYA9a4FACpq 6fuG5DiFgOuBeCrAmYT44F4wWXac+Rp+rdfhtPmX/+JuirRNSaCn7fndrMlUIKHCnX7V y+J5bfVShVTP3tM+gQo7lXW+slV0lWqQrtx3pKcz3qPLspoumgidBiwbkifVa4Ysh8Lt cG1Q==; darn=lists.php.net ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768919303; x=1769524103; darn=lists.php.net; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=hpIWvNcF9nAMsXUt4wIiM+vETi/XfAeM9HCpYQB8aqE=; b=fNImRazwkEyfae/+y9CNW+0bbDIltBzcO4iuyRZQQ/N0hlS6OvVb089jL2rbfsad4T gStRdKzYLHYvHSi6APyd3hSRhiZilUrdN4T+fWY1UBNn6jkj6Yoj9mLuezGNtWC7uxpI t5dD8UN5KTyHbPrRri5s3qBZziYkf0j8U0rMa7gPfqqruV+HQlow9AN4gHyJ7+yqtjzk ZL+2TSUDm1+DIa/6czUaou/mQJbUX3u+5sP05AbGT8wgd/zPsx5aSt4lM6VmNrkpnSa5 HOfvx4Ure14MfRpPivISGq8Ebwy/U52YCXKWGZSnaptjbtEhinzNcXwcJPD/0nKHUq28 vs6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768919303; x=1769524103; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=hpIWvNcF9nAMsXUt4wIiM+vETi/XfAeM9HCpYQB8aqE=; b=Z7mfk2I8euCDDGsyK9ofXhZcVow6RW6fS+nYMtAdcn1JW/Nm8HD8fFC8qY5XFdsp8f 8uGUrWIGANp06RoPIOPb2F9lgbPYeTiU1YNqH/LEc0GSDHdFcZLpqXAEXcRDDBdytygo iaV0zgdXbHyWPrt4uKoAg7MR/vpbRBDEBemppFanI+PqtasG5AEHPLjzlCiIixhclSVq yo35E9ySj37VlG+40ZyxL9RL5JUPhSMFxVs0C4RV5eG1LF0qL2a5CqdcySXZD/bzAi1E ul61k1Kca8vARzL4TOGUQoER8qv47fykcN/hSR7cBHl7eqXWKGGVuI3pn9i2fQ0Q208n 1n9w== X-Gm-Message-State: AOJu0YywdH9Y7bRKmfdgm1Bq0u7rlN0yYh7ic0OjE0aIgsuLV4nFuGTk 4QADf1VJT0InezJ5qWJX/cJzvqcyT01bFdtwboO7QI3A8k2Zi+qRCR7BTH+xHu3H2e9/aHg9u3f +GU7ys6DrF4UacM3dr9jXACcD60I8Psb+Y9yj X-Gm-Gg: AZuq6aL7DdZKVQo1hpPYA3x8hOWg0//gkSqiq9ECPXKeVBPR0Wd57GmXqU0pXhPHUka h4Po8H8hhFEIyxy2/ZU2/v+kx4LhzvNL6sCSXPZK+rTi5IleVbHB1Gx7Ef0l2DPrHhJx2QRnHSs kauVbMrCzEz7jFIlSrOyDbDhG7ba4ytK5MlfUZMDsaJaN5czRexbqvaonPFtCRMu6VMG6Ox6acy tWMphgdoh+uXsPVj8IMHhswCa5lgUzi0TARBuJaUj3fq26o020+SikmLJwIhbCbeqdc5XkgAAqb z+M= X-Received: by 2002:a5d:5887:0:b0:432:8504:8d5b with SMTP id ffacd0b85a97d-43569bcb816mr18311828f8f.50.1768919303291; Tue, 20 Jan 2026 06:28:23 -0800 (PST) Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 Date: Tue, 20 Jan 2026 15:28:12 +0100 X-Gm-Features: AZwV_QhwYZUtQoHkX9tcHJlx8TJatq3mmdEpolvEyrn63MbWkOq2YHeqFhOlIFE Message-ID: Subject: [PHP-DEV] Optimization when extensions don't provide handlers To: PHP internals Content-Type: multipart/alternative; boundary="000000000000b58cc40648d29eaf" From: barel.barelon@gmail.com (Barel) --000000000000b58cc40648d29eaf Content-Type: text/plain; charset="UTF-8" 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 --000000000000b58cc40648d29eaf Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi

I have seen that the php-src uses so= me flags like=C2=A0ZEND_EXTENSIONS_HAVE_OP_ARRAY_HANDLER to optimise the co= de so that the loop that calls the op array handler is not called if no ext= ension has set up an op array handler

I wonder why= this has not been done for the=C2=A0statement_handler,=C2=A0fcall_begin_ha= ndler and=C2=A0fcall_end_handler. This could be used to provide an optimise= d execution when no extension sets up a handler for these extension points<= /div>

Interested to know if there is a technical reason = for this

Cheers

Carlos
--000000000000b58cc40648d29eaf--