<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/gc/mmtk/src/weak_proc.rs, branch v4.0.4</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>[ruby/mmtk] Skip weak references that are special consts</title>
<updated>2025-07-30T13:26:19+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2025-07-29T20:50:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=74887a2c121bef639b7aae8d81d1e758994b5062'/>
<id>74887a2c121bef639b7aae8d81d1e758994b5062</id>
<content type='text'>
If a reference marked weak becomes a special const, it will crash because
it is not a GC handled object. We should skip special consts here.

https://github.com/ruby/mmtk/commit/870a79426b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If a reference marked weak becomes a special const, it will crash because
it is not a GC handled object. We should skip special consts here.

https://github.com/ruby/mmtk/commit/870a79426b
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/mmtk] Fix warnings from cargo fmt</title>
<updated>2025-07-29T21:45:11+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2025-07-29T21:05:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=1a4c0a99138186a0b53174639e9819f33621092f'/>
<id>1a4c0a99138186a0b53174639e9819f33621092f</id>
<content type='text'>
https://github.com/ruby/mmtk/commit/84975a8840
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/mmtk/commit/84975a8840
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/mmtk] Fix clippy warnings</title>
<updated>2025-07-29T21:45:10+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2025-07-29T21:03:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f608095b84ed31af87f1e2529f89b8b0517e281a'/>
<id>f608095b84ed31af87f1e2529f89b8b0517e281a</id>
<content type='text'>
https://github.com/ruby/mmtk/commit/45f991578e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/mmtk/commit/45f991578e
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/mmtk] Fix clippy warnings and formatting.</title>
<updated>2025-05-30T14:55:42+00:00</updated>
<author>
<name>Kunshan Wang</name>
<email>wks1986@gmail.com</email>
</author>
<published>2025-05-28T06:28:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=94688bdc7da3ac82f712d3cdc11859ace3bfa8ac'/>
<id>94688bdc7da3ac82f712d3cdc11859ace3bfa8ac</id>
<content type='text'>
We also enable `#![warn(unsafe_op_in_unsafe_fn)]` in the whole mmtk_ruby
crate.

https://github.com/ruby/mmtk/commit/8b8025f71a
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We also enable `#![warn(unsafe_op_in_unsafe_fn)]` in the whole mmtk_ruby
crate.

https://github.com/ruby/mmtk/commit/8b8025f71a
</pre>
</div>
</content>
</entry>
<entry>
<title>Move `object_id` in object fields.</title>
<updated>2025-05-08T05:58:05+00:00</updated>
<author>
<name>Jean Boussier</name>
<email>jean.boussier@gmail.com</email>
</author>
<published>2025-04-21T07:16:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f48e45d1e9c4412d5f3ee49241d0b9359651ce7c'/>
<id>f48e45d1e9c4412d5f3ee49241d0b9359651ce7c</id>
<content type='text'>
And get rid of the `obj_to_id_tbl`

It's no longer needed, the `object_id` is now stored inline
in the object alongside instance variables.

We still need the inverse table in case `_id2ref` is invoked, but
we lazily build it by walking the heap if that happens.

The `object_id` concern is also no longer a GC implementation
concern, but a generic implementation.

Co-Authored-By: Matt Valentine-House &lt;matt@eightbitraptor.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
And get rid of the `obj_to_id_tbl`

It's no longer needed, the `object_id` is now stored inline
in the object alongside instance variables.

We still need the inverse table in case `_id2ref` is invoked, but
we lazily build it by walking the heap if that happens.

The `object_id` concern is also no longer a GC implementation
concern, but a generic implementation.

Co-Authored-By: Matt Valentine-House &lt;matt@eightbitraptor.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/mmtk] [Feature #20860] Implement Mark-Sweep with MMTK</title>
<updated>2024-11-22T09:55:24+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2024-11-21T20:34:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=19840dfd718465e3bd7a6cf4cf981944443b2985'/>
<id>19840dfd718465e3bd7a6cf4cf981944443b2985</id>
<content type='text'>
This commit implements the mark-sweep algorithm using MMTk and allows
customizing the plan using MMTK_PLAN.

https://github.com/ruby/mmtk/commit/6fea5e5ffc

Co-Authored-By: Matt Valentine-House &lt;matt@eightbitraptor.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit implements the mark-sweep algorithm using MMTk and allows
customizing the plan using MMTK_PLAN.

https://github.com/ruby/mmtk/commit/6fea5e5ffc

Co-Authored-By: Matt Valentine-House &lt;matt@eightbitraptor.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/mmtk] [Feature #20860] Implement NoGC with MMTk</title>
<updated>2024-11-22T09:55:23+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2024-11-21T20:33:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=211aef1bc0f42545897892122da44ed01e066186'/>
<id>211aef1bc0f42545897892122da44ed01e066186</id>
<content type='text'>
This commit only supports initializing MMTk with NoGC and object
allocation.

https://github.com/ruby/mmtk/commit/39aa10e537

Co-Authored-By: Kunshan Wang &lt;wks1986@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit only supports initializing MMTk with NoGC and object
allocation.

https://github.com/ruby/mmtk/commit/39aa10e537

Co-Authored-By: Kunshan Wang &lt;wks1986@gmail.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
