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

YJIT: Fix invalidation for c_call and c_return #6719

Merged
merged 1 commit into from Nov 13, 2022

Conversation

XrXr
Copy link
Member

@XrXr XrXr commented Nov 11, 2022

Follow-up for 2b8191b. Since that commit, we stopped doing code invalidation the second time the call and return events are enabled. We need to do it every time these events are enabled because we might have generated code while these events are disabled.

Also rename locals and edit comments to make it more clear that the iseq rewrite code path only happens the first time a particular iseq trace event is enabled.

Follow-up for 2b8191b. Since that
commit, we stopped doing code invalidation the second time the call and
return events are enabled. We need to do it every time these events are
enabled because we might have generated code while these events are
disabled.

Also rename locals and edit comments to make it more clear that the iseq
rewrite code path only happens the first time a particular iseq trace
event is enabled.
@XrXr XrXr requested a review from k0kubun November 11, 2022 21:40
@matzbot matzbot requested a review from a team November 11, 2022 21:40
@XrXr
Copy link
Member Author

XrXr commented Nov 11, 2022

Resolving my confusion from #6695 (comment) and #6713 led to finding this issue :)

@maximecb maximecb merged commit bc8ba24 into ruby:master Nov 13, 2022
@XrXr XrXr deleted the yjit-c-call-inval branch November 14, 2022 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants