<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/zjit/src/cruby_methods.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>ZJIT: Only optimize `[]` and `[]=` for exact Hash, not Hash subclasses</title>
<updated>2025-12-12T18:26:31+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2025-12-12T17:42:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=4f900e3ce9cefa76bc2c94e0e591acd51bf0e638'/>
<id>4f900e3ce9cefa76bc2c94e0e591acd51bf0e638</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Inline `Hash#[]=`</title>
<updated>2025-12-12T18:26:31+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2025-12-11T21:23:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=309d6ef9c3792d1116809620a01240c7b8f4406e'/>
<id>309d6ef9c3792d1116809620a01240c7b8f4406e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Inline Kernel#class (#15397)</title>
<updated>2025-12-04T01:25:52+00:00</updated>
<author>
<name>Max Bernstein</name>
<email>rubybugs@bernsteinbear.com</email>
</author>
<published>2025-12-04T01:25:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3efd8c6764a5b324b7d04a12443c2f18dd74181b'/>
<id>3efd8c6764a5b324b7d04a12443c2f18dd74181b</id>
<content type='text'>
We generally know the receiver's class from profile info. I see 600k of these when running lobsters.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We generally know the receiver's class from profile info. I see 600k of these when running lobsters.</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Open-code String#getbyte</title>
<updated>2025-12-01T23:19:26+00:00</updated>
<author>
<name>Max Bernstein</name>
<email>ruby@bernsteinbear.com</email>
</author>
<published>2025-11-25T04:30:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=985a4d977f1c1a5051c88b0c2f8af8913bd93008'/>
<id>985a4d977f1c1a5051c88b0c2f8af8913bd93008</id>
<content type='text'>
Don't call a C function.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Don't call a C function.
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Mark String#ascii_only? as leaf</title>
<updated>2025-12-01T23:19:26+00:00</updated>
<author>
<name>Max Bernstein</name>
<email>ruby@bernsteinbear.com</email>
</author>
<published>2025-11-25T04:18:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=74e9f717200106be553e954e8ac354b54acf1c60'/>
<id>74e9f717200106be553e954e8ac354b54acf1c60</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Specialize Integer#&gt;&gt;</title>
<updated>2025-12-01T23:19:26+00:00</updated>
<author>
<name>Max Bernstein</name>
<email>ruby@bernsteinbear.com</email>
</author>
<published>2025-11-25T03:44:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=6db83a00a4272eb1089d67da83e1cd9d4e10227b'/>
<id>6db83a00a4272eb1089d67da83e1cd9d4e10227b</id>
<content type='text'>
Same as Integer#&gt;&gt;. Also add more strict type checks for both Integer#&gt;&gt;
and Integer#&lt;&lt;.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Same as Integer#&gt;&gt;. Also add more strict type checks for both Integer#&gt;&gt;
and Integer#&lt;&lt;.
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Specialize String#&lt;&lt; with Fixnum</title>
<updated>2025-12-01T23:19:26+00:00</updated>
<author>
<name>Max Bernstein</name>
<email>ruby@bernsteinbear.com</email>
</author>
<published>2025-11-25T03:24:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=8aed31103874524395912fb7ffaee88b5e59a9c3'/>
<id>8aed31103874524395912fb7ffaee88b5e59a9c3</id>
<content type='text'>
Append a codepoint.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Append a codepoint.
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Mark Integer#to_s as returning StringExact</title>
<updated>2025-12-01T23:19:26+00:00</updated>
<author>
<name>Max Bernstein</name>
<email>ruby@bernsteinbear.com</email>
</author>
<published>2025-11-25T03:18:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=8ce78821cd8713d149ff27d9fbed38799e983349'/>
<id>8ce78821cd8713d149ff27d9fbed38799e983349</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Standardize method dispatch insns' `recv` field (#15334)</title>
<updated>2025-12-01T18:01:12+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan001212@gmail.com</email>
</author>
<published>2025-12-01T18:01:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=5f92d6da1e48ce62205858cdcc7e60108e585f5f'/>
<id>5f92d6da1e48ce62205858cdcc7e60108e585f5f</id>
<content type='text'>
ZJIT: Standardize C call related insn fields

- Add `recv` field to `CCall` and `CCallWithFrame` so now all method dispatch
  related instructions have `recv` field, separate from `args` field.
  This ensures consistent pointer arithmetic when generating code for these
  instructions.
- Standardize `recv` field's display position in send related instructions.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ZJIT: Standardize C call related insn fields

- Add `recv` field to `CCall` and `CCallWithFrame` so now all method dispatch
  related instructions have `recv` field, separate from `args` field.
  This ensures consistent pointer arithmetic when generating code for these
  instructions.
- Standardize `recv` field's display position in send related instructions.</pre>
</div>
</content>
</entry>
<entry>
<title>ZJIT: Don't make GuardNotFrozen consider immediates</title>
<updated>2025-11-21T19:16:26+00:00</updated>
<author>
<name>Max Bernstein</name>
<email>ruby@bernsteinbear.com</email>
</author>
<published>2025-11-21T18:43:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=6e2906f60da20d6cd057aa8ad4b84f8c988406d9'/>
<id>6e2906f60da20d6cd057aa8ad4b84f8c988406d9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
