Commit graph

11 commits

Author SHA1 Message Date
Alan Wu
92b218fbc3 YJIT: ZJIT: Allow both JITs in the same build
This commit allows building YJIT and ZJIT simultaneously, a "combo
build". Previously, `./configure --enable-yjit --enable-zjit` failed. At
runtime, though, only one of the two can be enabled at a time.

Add a root Cargo workspace that contains both the yjit and zjit crate.
The common Rust build integration mechanisms are factored out into
defs/jit.mk.

Combo YJIT+ZJIT dev builds are supported; if either JIT uses
`--enable-*=dev`, both of them are built in dev mode.

The combo build requires Cargo, but building one JIT at a time with only
rustc in release build remains supported.
2025-05-15 00:39:03 +09:00
Peter Zhu
4df16051be [ruby/mmtk] Remove unused lazy_static dependency
f47a1e2d17
2025-01-22 16:07:04 +00:00
Peter Zhu
be66448311 [ruby/mmtk] Bump mmtk-core
Fixes a bug where there is an infinite loop when MMTK_HEAP_MIN is small.

12c7ede20b
2025-01-21 17:02:18 +00:00
Peter Zhu
d1a30359b1 [ruby/mmtk] Bump mmtk-core
52b857ea04
2025-01-16 16:20:05 +00:00
Peter Zhu
cb6476a34e [ruby/mmtk] Bump mmtk-core
https://github.com/mmtk/mmtk-core/pull/1261 fixes an issue where the following
script causes a Rust panic:

    GC.disable
    10_000.times { Object.new }
    puts GC.stat

6191ee994a
2025-01-15 15:13:36 +00:00
Peter Zhu
85a25116cc [ruby/mmtk] Enable immix_non_moving feature
63ab563e04
2025-01-13 16:44:36 +00:00
Peter Zhu
4ce82f1c33 [ruby/mmtk] Bump mmtk-core to
68bf1b6382

ba1ec69bf6
2025-01-09 19:08:49 +00:00
Peter Zhu
4a78d74039 [ruby/mmtk] Remove unused Ruby SHA reference in Cargo.toml
02b9439ea6
2025-01-07 22:17:31 +00:00
Peter Zhu
2b713f08a3 [ruby/mmtk] Bump mmtk-core version
0de72c03ba
2025-01-07 15:37:41 +00:00
Peter Zhu
19840dfd71 [ruby/mmtk] [Feature #20860] Implement Mark-Sweep with MMTK
This commit implements the mark-sweep algorithm using MMTk and allows
customizing the plan using MMTK_PLAN.

6fea5e5ffc

Co-Authored-By: Matt Valentine-House <matt@eightbitraptor.com>
2024-11-22 09:55:24 +00:00
Peter Zhu
211aef1bc0 [ruby/mmtk] [Feature #20860] Implement NoGC with MMTk
This commit only supports initializing MMTk with NoGC and object
allocation.

39aa10e537

Co-Authored-By: Kunshan Wang <wks1986@gmail.com>
2024-11-22 09:55:23 +00:00