Skip to content

[pull] master from ruby:master#1186

Merged
pull[bot] merged 9 commits into
turkdevops:masterfrom
ruby:master
Jul 6, 2026
Merged

[pull] master from ruby:master#1186
pull[bot] merged 9 commits into
turkdevops:masterfrom
ruby:master

Conversation

@pull

@pull pull Bot commented Jul 6, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

Earlopain and others added 9 commits July 6, 2026 09:38
```
Results — YJIT enabled: block.call vs yield, before/after

┌──────────────────────┬─────────────────────┬────────────────────┬────────────┬
│      operation       │ before (2a23415) │ after (dd4711e727) │  speedup   │
├──────────────────────┼─────────────────────┼────────────────────┼────────────┼
│ yield (control)      │ 58.57M i/s          │ 58.56M i/s         │ — (stable) │
├──────────────────────┼─────────────────────┼────────────────────┼────────────┼
│ call (0 args)        │ 32.95M i/s          │ 57.37M i/s         │ 1.74×      │
├──────────────────────┼─────────────────────┼────────────────────┼────────────┼
│ yield(1,2) (control) │ 47.25M i/s          │ 51.64M i/s         │ —          │
├──────────────────────┼─────────────────────┼────────────────────┼────────────┼
│ call(1,2) (2 args)   │ 31.25M i/s          │ 51.62M i/s         │ 1.65×      │
└──────────────────────┴─────────────────────┴────────────────────┴────────────┴
```
This PR fixes a comment that calls ZJIT basic blocks extended. They have been traditional basic blocks since #16888.
It was [previously][1] moved from C to Ruby, but the doc on the Ruby
method was copied from `#lock` while the correct doc was left in C.

[1]: 07b2356
We renamed `rpo` to `reverse_post_order` so rename this one to match as
well.
The old name is a bit of a misnomer now since it's not saving just the
PC anymore. It's still one write, but it's the JITFrame pointer.
This is a footgun, less bad than the C version, whereby an `assert!`
could reasonably be changed into a `debug_assert!` and cause a problem
because the condition no longer executes in release builds.

This one would probably be instantly noticeable, but still.
Keep the functions together (not split in HIR/codegen) and in a more
reasonable module.
@pull pull Bot locked and limited conversation to collaborators Jul 6, 2026
@pull pull Bot added the ⤵️ pull label Jul 6, 2026
@pull pull Bot merged commit e7a2126 into turkdevops:master Jul 6, 2026
1 check was pending
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants