Skip to content

ZJIT: Parse a few more opt_*, CALL_SIMPLE_METHOD opcodes #13549

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

Merged
merged 6 commits into from
Jun 9, 2025

Conversation

XrXr
Copy link
Member

@XrXr XrXr commented Jun 6, 2025

  • ZJIT: Parse opt_empty_p into HIR
  • ZJIT: Parse opt_succ into HIR
  • ZJIT: Parse opt_and into HIR
  • ZJIT: Parse opt_or into HIR
  • ZJIT: Parse opt_not into HIR
  • ZJIT: Parse opt_regexpmatch2 into HIR

@matzbot matzbot requested a review from a team June 6, 2025 13:08
zjit/src/hir.rs Outdated
@@ -2325,6 +2325,9 @@ pub fn iseq_to_hir(iseq: *const rb_iseq_t) -> Result<Function, ParseError> {
break; // Don't enqueue the next block as a successor
}

// These are opt_send_without_block and all the opt_* instructions
// specialized to a certain method that could also be serviced
// using the general send implementation.
Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe say something also about how we optimize them later in the pipeline as part of the optimizer

@tekknolagi
Copy link
Contributor

Oh also please add some e2e/execution/Ruby-level tests

@XrXr XrXr force-pushed the zjit-more-opt-send-specializeds branch from d6a258a to 082d56d Compare June 6, 2025 14:06
@XrXr XrXr force-pushed the zjit-more-opt-send-specializeds branch from db8a046 to 5439280 Compare June 9, 2025 08:50
@XrXr XrXr enabled auto-merge (rebase) June 9, 2025 08:50
Copy link

launchable-app bot commented Jun 9, 2025

Tests Failed

✖️no tests failed ✔️61982 tests passed(2 flakes)

@XrXr XrXr merged commit b8922a8 into ruby:master Jun 9, 2025
82 checks passed
@XrXr XrXr deleted the zjit-more-opt-send-specializeds branch June 9, 2025 13:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants