Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Sep 20, 2025

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 : )

k0kubun and others added 22 commits September 19, 2025 07:08
Share the empty source string in `pm_string_mapped_init` and
`pm_string_file_init`.

ruby/prism@f7a9a03a92
…_complex_tbl

The imemo_fields_new function takes a capacity in the number of fields to
preallocate. rb_imemo_fields_new_complex_tbl is using it incorrectly because
it is preallocating sizeof(struct rb_fields) number of fields.
ZJIT: Measure writing to locals with level > 0
Make sure these parameter types are counted in the fallback def_types.
…ailing arguments

https://bugs.ruby-lang.org/issues/21168#note-5

The added code samples align with `parse.y`, except for `foo(bar baz do end)` which `parse.y` currently rejects but shouldn't.

ruby/prism@3a4e102d80
We can use `Vec<Opnd>` instead of `Vec<(Opnd, Opnd)>` in NewHash HIR
as it's the only usage of such type, which requires special handling.
* Comment on not auto-requesting reviews for workflow files

* Make it easier to reproduce matrix test_task commands from CI

Expand the interpolated command so that it is easier to see exactly what command was run.
* ZJIT: Fix disasm tests on release build

* Rename string() to hexdump()
Previously we would sometimes call enc_register_at several times in
order to update the encoding values after the base encoding may have
been loaded.

This updates enc_register_at to only be used via enc_register, when an
actual new encoding at a new index is being registered.

Other callers (which in all cases found the index by the name matching)
now call enc_load_from_base which is only responsibly for loading the
encoding from the base values.
Previously we were looping over the enc_table, but when I added an
assertion the only thing that loop was doing is the equivalent of
ENC_TO_ENCINDEX(base). However we don't even need the index of base.

Instead we should be able to just use the badirectly.
* ZJIT: Avoid unnecessary `PopOpnds` codegen

If there's no opnds to restore, we don't need to do anything.

* ZJIT: Avoid unnecessary sub_into when there's no opnds to allocate
It's not just the default allocator; other allocators are also leaf.
The stack layout is incompatible with the way we reify the stack for
generating fallback SendWithoutBlock: the receiver is an embedded VALUE
in the bytecode, not on the stack. Since we don't expect these to be
overridden often, instead of fussing about with the stack layout, just
hope for the best and PatchPoint/SideExit.

Fix Shopify#760
@pull pull bot locked and limited conversation to collaborators Sep 20, 2025
@pull pull bot added the ⤵️ pull label Sep 20, 2025
@pull pull bot merged commit 8d1c459 into turkdevops:master Sep 20, 2025
1 of 2 checks passed
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.

9 participants