<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/tool/ruby_vm/models, branch v4.0.2</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Explicitly declare VM instruction dependencies (#14509)</title>
<updated>2025-09-10T21:18:44+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-10T21:18:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=bd4de1245f9899463a817d43863bcee520741e50'/>
<id>bd4de1245f9899463a817d43863bcee520741e50</id>
<content type='text'>
instead of mutating RubyVM::Instructions and letting the order of
`require` impact its behavior.

Now that we have both RubyVM::TraceInstruction and
RubyVM::ZJITInstruction, it feels too much of a tight coupling to rely
on `require` to be ordered properly.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
instead of mutating RubyVM::Instructions and letting the order of
`require` impact its behavior.

Now that we have both RubyVM::TraceInstruction and
RubyVM::ZJITInstruction, it feels too much of a tight coupling to rely
on `require` to be ordered properly.</pre>
</div>
</content>
</entry>
<entry>
<title>Rename VM instruction classes to singular names (#14507)</title>
<updated>2025-09-10T21:04:33+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-10T21:04:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0cec87399df1cdff47f5b7bcfa6a804a2ebd7868'/>
<id>0cec87399df1cdff47f5b7bcfa6a804a2ebd7868</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bare_instructions.rb: Remove unused always_leaf?</title>
<updated>2025-09-05T16:24:56+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-05T16:24:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=30f32a048cdb5d854a413675b8b94b8feffc628e'/>
<id>30f32a048cdb5d854a413675b8b94b8feffc628e</id>
<content type='text'>
83bc6ced920c51ffc3783b03f2e1c7f89f5c2fd5 was the last use of it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
83bc6ced920c51ffc3783b03f2e1c7f89f5c2fd5 was the last use of it.
</pre>
</div>
</content>
</entry>
<entry>
<title>insns.def: Drop unused leafness_of_check_ints</title>
<updated>2025-09-05T16:15:00+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-05T16:14:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=799d57bd0178168c977cc0c2b45ff3a5f01d1297'/>
<id>799d57bd0178168c977cc0c2b45ff3a5f01d1297</id>
<content type='text'>
It was used to let MJIT override the leafness of the instruction when it
decides to remove check_ints for it. Now that MJIT is gone, nobody needs
to "override" the leafness using this.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It was used to let MJIT override the leafness of the instruction when it
decides to remove check_ints for it. Now that MJIT is gone, nobody needs
to "override" the leafness using this.
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Drop trace_zjit_* instructions (#13189)</title>
<updated>2025-04-28T16:25:56+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-04-28T16:25:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=58e3aa02240a9ec1b5fe6ce60d63828c2cf0c73a'/>
<id>58e3aa02240a9ec1b5fe6ce60d63828c2cf0c73a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add zjit_* instructions to profile the interpreter (https://github.com/Shopify/zjit/pull/16)</title>
<updated>2025-04-18T12:52:59+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-03-03T21:46:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0a543daf15e995ad12b0884bf89ea89b6b480dd2'/>
<id>0a543daf15e995ad12b0884bf89ea89b6b480dd2</id>
<content type='text'>
* Add zjit_* instructions to profile the interpreter

* Rename FixnumPlus to FixnumAdd

* Update a comment about Invalidate

* Rename Guard to GuardType

* Rename Invalidate to PatchPoint

* Drop unneeded debug!()

* Plan on profiling the types

* Use the output of GuardType as type refined outputs
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add zjit_* instructions to profile the interpreter

* Rename FixnumPlus to FixnumAdd

* Update a comment about Invalidate

* Rename Guard to GuardType

* Rename Invalidate to PatchPoint

* Drop unneeded debug!()

* Plan on profiling the types

* Use the output of GuardType as type refined outputs
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove useless shebang in non-executable files [ci skip]</title>
<updated>2025-02-21T02:00:33+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-02-21T02:00:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a64bf7e5d0f693c3325740608f6f4f002b96f40c'/>
<id>a64bf7e5d0f693c3325740608f6f4f002b96f40c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove useless shebang in non-executable file [ci skip]</title>
<updated>2025-02-21T01:32:16+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-02-21T01:32:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f4481b9515c4dd22efcbe044923caf2ffe532427'/>
<id>f4481b9515c4dd22efcbe044923caf2ffe532427</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>chmod -x tool/ruby_vm/models/bare_instructions.rb</title>
<updated>2025-02-20T18:14:37+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-02-20T18:14:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b2cf48f4067c22a79e6ceb30247d611e5a310a19'/>
<id>b2cf48f4067c22a79e6ceb30247d611e5a310a19</id>
<content type='text'>
We run only tool/insns2vm.rb as the executable. It seems confusing to
have an executable flag on this file.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We run only tool/insns2vm.rb as the executable. It seems confusing to
have an executable flag on this file.
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename opes to operands on RubyVM::BaseInstruction</title>
<updated>2023-03-16T21:16:56+00:00</updated>
<author>
<name>John Hawthorn</name>
<email>john@hawthorn.email</email>
</author>
<published>2023-03-16T20:13:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=617c9b4656d4eda67b845c102fc13b02dc76a439'/>
<id>617c9b4656d4eda67b845c102fc13b02dc76a439</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
