Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Aug 28, 2025

See Commits and Changes for more details.


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

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

peterzhu2118 and others added 22 commits August 28, 2025 09:05
`rb_ivar_delete` would force a new shape to be created.
And in the case of a shape exhaustion, it wouldn't handle
T_CLASS/T_MODULE correctly.
* Remove logic that was used for the ubuntu.yml, but not used for
  ubuntu-ibm.yml.
* Add a dummy Ubuntu x86_64 case to make this CI pass on fork repositories.
  This case only runs on fork repositories.
Note that the default configure option `./configure cppflags=-DRUBY_DEBUG` with
the default optimization level `-O3`, causes the following Ractor test and other
tests failing. So, we don't set the option in ppc64le case.

```
$ make btest BTESTS=bootstraptest/test_ractor.rb
```

See https://bugs.ruby-lang.org/issues/21534 for details.
* ZJIT: Refactor stats implementations

* s/num_send_dynamic/dynamic_send_count/
* ZJIT: Add Ractor mode PatchPoint for ivar get/set

* ZJIT: Only add single ractor patchpoint to class/module receivers

* ZJIT: Improve Ractor mode patch point comments

Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

---------

Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
This lets us know where to look for an ivar: in the object or indirect
elsewhere in the heap.
We will (for now) only cache ivar reads from T_OBJECTs.
This catches both the interpreter-JIT and JIT-JIT cases.

Fixes Shopify#719
follow-up on #14378
I'm sorry.

Another follow-up on #14378
Depending on the user's warning level, getting certain global variables
may lead to calling `Warning#warn`, which can be redefined by the user.

This fixes another `bootstraptest/test_yjit.rb` failure.
Right now JITs don't generate any code to access ivar on types
other than T_OBJECT, but they might soon, so we must ensure
two IMEMO/fields can't have the same `shape_id` but diffent
embed/heap status.
@pull pull bot locked and limited conversation to collaborators Aug 28, 2025
@pull pull bot added the ⤵️ pull label Aug 28, 2025
@pull pull bot merged commit 041450a into turkdevops:master Aug 28, 2025
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.

6 participants