ruby-trunk-changes 2022-07-07

今日は YJIT の収集する統計情報の項目追加や "<<" メソッドの receiver と引数両方 String だった時の最適化の追加などがありました。

[3c61e1e77f] Maxime Chevalier-Boisvert 2022-07-06 15:13:22 UTC

YJIT の実装で統計情報収集用のカウンタに JITGC の mark 用の参照を配列に追加した数のカウンタを追加しています。 https://github.com/ruby/ruby/pull/6089

[9641f23316] git 2022-07-06 15:13:44 UTC

version.h の日付更新

[906f7cb3e7] Jean Boussier 2022-07-06 10:31:54 UTC

演算子メソッドの << のための VM の最適化命令 opt_ltlt で receiver が String オブジェクトの時の最適化処理でさらに右辺が String の時に直接 rb_str_buf_append() を呼び出す最適化パスを追加しています。

[a2e0815e27] "Noah Gibbs (and/or Benchmark CI)" 2022-07-06 11:47:34 UTC

YJIT の Rust 実装で C API の rb_str_append() を利用していたところをかわりに rb_str_buf_append() を利用するように変更しています。

[c6b38e43b0] Jean Boussier 2022-06-30 13:54:26 UTC

thread_pthread.c の Init_native_thread() の先頭で pthread_rwlock_init() で rb_internal_thread_event_hooks_rw_lock の初期化するようにしてましたが、この変数は初期化子で PTHREAD_RWLOCK_INITIALIZER という定数代入で初期化していてこの呼び出しは不要なようなので削除しています。

[dbb23f29cb] Burdette Lamar 2022-07-06 18:57:48 UTC

拡張ライブラリ date の rdoc 用コメントの変更。

[4ccaf6285f] Aaron Patterson 2022-07-06 20:20:53 UTC

misc/lldb_cruby.py の初期化処理時に enum 型の値を取り出す記法が古い lldb の python 向けライブラリで対応してない書きかただったようなので修正しています。GetEnumMembers() が iterable を返していなかったみたいですね。

[7ba5c0633c] Burdette Lamar 2022-07-06 22:04:47 UTC

標準添付ライブラリ pstore の rdoc 用コメントの英文の酒精。

[cd94842922] Nobuyoshi Nakada 2022-07-02 11:58:59 UTC

ARGF.lineno はファイルの先頭に shebang があったらその行を無視するという仕様があったようなのですが 3.0 以降それが無視されなくなっていたようで修正しています。 [ruby-core:109116] [Bug #18892]

[67e54ce408] Nobuyoshi Nakada 2022-07-07 04:20:10 UTC

configure で mkdir -p コマンド相当のディレクトリを再帰的に作成するコマンドを検出するマクロを tool/m4/ruby_prog_makedirs.m4 に切り出して install-sh を代替にできるようにしている? みたいです。コミットログを読むと違いそう。

[8794cc6289] Nobuyoshi Nakada 2021-12-29 10:41:35 UTC

GitHub Actions に macOS 用の workflow を復活させています。2efbb35a8fdf1bea4c914f19f9c0beb52fa77e78 で一度削除していましたがまたインスタンスの提供状況が良くなったのでしょうか。