Skip to content

Remove JMPZNZ opcode #7857

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

Closed
wants to merge 1 commit into from
Closed

Remove JMPZNZ opcode #7857

wants to merge 1 commit into from

Conversation

nikic
Copy link
Member

@nikic nikic commented Dec 30, 2021

@dstogov I'm not sure if the JMPZNZ opcode still provides a value. While it can avoid execution of separate JMP opcode in some cases, it also prevents smart branch optimization, so creating JMPZNZ may be detrimental in practice. If there's no clear benefit to it, I think we should drop it to reduce number of cases that the optimizer needs to handle.

@dstogov dstogov self-requested a review January 10, 2022 06:48
@dstogov
Copy link
Member

dstogov commented Jan 10, 2022

@nikic is this the first attempt to remove JMPZNZ?

I've found a similar local patch dated by 04 October 2019.
But, I'm not sure if it was authored by me or you. And I don't remember why we didn't remove JMPZNZ that time.
Now I don't see any problems.

Copy link
Member

@dstogov dstogov left a comment

Choose a reason for hiding this comment

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

LGTM

@nikic
Copy link
Member Author

nikic commented Jan 10, 2022

@dstogov I don't remember doing this before, so it's probably your patch :)

@nikic nikic closed this in 4543cd3 Jan 10, 2022
shivammathur added a commit to shivammathur/xdebug that referenced this pull request Jan 11, 2022
JMPZNZ opcode has been removed in PHP 8.2. So this limits the
handling of the JMPZNZ opcode to lower versions.

Ref: php/php-src#7857
mvorisek pushed a commit to mvorisek/xdebug that referenced this pull request Apr 1, 2022
JMPZNZ opcode has been removed in PHP 8.2. So this limits the
handling of the JMPZNZ opcode to lower versions.

Ref: php/php-src#7857
shivammathur added a commit to shivammathur/xdebug that referenced this pull request Jun 25, 2022
JMPZNZ opcode has been removed in PHP 8.2. So this limits the
handling of the JMPZNZ opcode to lower versions.

Ref: php/php-src#7857
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.

3 participants