Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge JMP_FRAMELESS cache slots in Optimizer/compact_literals #18093

Merged
merged 2 commits into from
Mar 17, 2025

Conversation

nielsdos
Copy link
Member

This avoids repeated lookups in the function table for the same function name.
Although this optimization is observable, i.e. defining a function via an include in between 2 JMP_FRAMELESS for the same function, this cannot be relied on already as far as I know if the optimizer runs.

This avoids repeated lookups in the function table for the same
function name.
Although this optimization is observable, i.e. defining a function via
an include in between 2 JMP_FRAMELESS for the same function, this cannot
be relied on already as far as I know if the optimizer runs.
@nielsdos nielsdos marked this pull request as ready for review March 16, 2025 21:30
@nielsdos nielsdos requested a review from dstogov as a code owner March 16, 2025 21:30
Comment on lines 778 to 780
case ZEND_DECLARE_ANON_CLASS:
case ZEND_DECLARE_CLASS_DELAYED:
case ZEND_JMP_FRAMELESS:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ir may make sense to separate code for ZEND_JMP_FRAMELESS from others.

@nielsdos nielsdos merged commit 25f4510 into php:master Mar 17, 2025
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants