Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork34k
gh-143183: Link trace to side exits, rather than stop#143268
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
Fidget-Spinner commentedDec 29, 2025
diegorusso left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I see that#143187 add a test. Can we have it here as well?
Fidget-Spinner commentedDec 29, 2025
I fixed the test in the test suite so that it catches it. I verified that without the change, the test fails. With the change, the test passes. |
Fidget-Spinner commentedDec 29, 2025
Fidget-Spinner commentedDec 29, 2025
Uh oh!
There was an error while loading.Please reload this page.
diegorusso left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Thanks for fixing the regression and adding the test for it!
6cb245d intopython:mainUh oh!
There was an error while loading.Please reload this page.
tomasr8 left a comment• edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Damn you're too fast.. was about to hit approve when you merged it 😆
| DPRINTF(2, "Unsupported: oparg too large\n"); | ||
| unsupported: | ||
| { | ||
| // Rewind to previous instruction and replace with _EXIT_TRACE. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
In the other PR, I meant to update this comment but GH shows the suggestions in a weird a way for unchanges lines.. The point is the comment mentions_EXIT_TRACE but it should be_DEOPT now :)
// Rewind to previous instruction and replace with _EXIT_TRACE.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Oh yeah. Good point!
Uh oh!
There was an error while loading.Please reload this page.
#143187 caused a pretty serious regression in JIT performance, mainly because we stop the traceprior to the ENTER_EXECUTOR. This PR restores the old behavior, stopping the traceat the ENTER_EXECUTOR, allowing it to link up to the executor.
The perf regression can be clearly seen here (going up means things got slower):
stopiteration_error#143183