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

break up JUMP_IF_NOT_EXC/EG_MATCH #348

Closed
iritkatriel opened this issue Apr 1, 2022 · 4 comments
Closed

break up JUMP_IF_NOT_EXC/EG_MATCH #348

iritkatriel opened this issue Apr 1, 2022 · 4 comments
Assignees

Comments

@iritkatriel
Copy link
Collaborator

JUMP_IF_NOT_EXC_MATCH and JUMP_IF_NOT_EG_MATCH are not hot opcodes (they are part of exception handling).

If we break them up into
(1) check match
(2) POP_JUMP_IF_FALSE
then we will have fewer jump opcodes.

@iritkatriel
Copy link
Collaborator Author

The check opcodes don't have an arg, so we could merge them and use the oparg to distinguish between the except and except* versions.

@iritkatriel
Copy link
Collaborator Author

The check opcodes don't have an arg, so we could merge them and use the oparg to distinguish between the except and except* versions.

Actually these two versions have different stack_effects, so this may not be a good idea.

@iritkatriel
Copy link
Collaborator Author

BPO for this.

@iritkatriel iritkatriel moved this to In Progress in Fancy CPython Board Apr 1, 2022
@iritkatriel iritkatriel self-assigned this Apr 1, 2022
@iritkatriel iritkatriel moved this from In Progress to In Review in Fancy CPython Board Apr 4, 2022
@iritkatriel
Copy link
Collaborator Author

This is done.

Repository owner moved this from In Review to Done in Fancy CPython Board Apr 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

1 participant