ruby-trunk-changes 2023-08-23

今日は主に YJIT の変更、$0 へ代入してプロセス名を変更する機能の不具合修正などがありました。

[7127f39bac] Nobuyoshi Nakada 2023-08-22 09:13:09 UTC

load.c で拡張子の種類を分類する数値をマジックナンバーとして書いてたのを enum として定数定義するようにしています。

[9b373fb428] Jemma Issroff 2023-08-22 17:17:56 UTC

yarp のコメントの typo 修正。

[837c12b0c8] Peter Zhu 2023-08-22 20:31:36 UTC

string.c で STR_EMBED_P() マクロを利用するようにリファクタリングしています。

[2d75069779] Benoit Daloze 2023-08-22 14:14:21 UTC

yarp で require のかわりに require_relative を利用するようにしています。

[c23e2e19b7] Maxime Chevalier-Boisvert 2023-08-22 21:36:12 UTC

YJIT の --yjit-stats で出力する情報に code_region_overhead という項目を追加しています。 https://github.com/ruby/ruby/pull/8262

[ff55238913] Alan Wu 2023-08-22 22:43:56 UTC

YJIT の x86_64 アーキテクチャ向けで Store 命令の入出力がともにメモリの時に Mov 命令と同じ処理を使うようにしています。

[00054de6b5] yui-knk 2023-08-22 09:24:14 UTC

AST の NODE_GASGN と NODE_GVAR タイプのノードで 3つめの leaf の nd_entry という名前を使うのをやめて nd_vid を利用するようにしています。

[b92d599eec] eileencodes 2023-08-01 18:20:05 UTC

gc.c でデバッグ用にオブジェクトの情報をダンプする時の T_MODULE 型オブジェクトで名前がついてない時の表示の typo 修正。

[347993e95c] Jeremy Evans 2023-08-22 22:14:37 UTC

起動時にコマンドラインオプションを処理する process_options() の呼び出しを ruby_init_setproctitle() でプロセス名の設定後に変更しています。コマンドラインオプションがあると $0 の上書きをした時にうまく反映されてないみたいです。 [ruby-core:69610] [Bug #11269]

[e89150b1d4] Takashi Kokubun 2023-08-23 04:56:51 UTC

common.mk の yarp 関係のファイルの依存関係の記述を $(srcdir) からのパスで指定するようにしています。ソースディレクトリ以外でのビルドの対応のためかな。 https://github.com/ruby/ruby/pull/8266

[f1c6da65f4] Nobuyoshi Nakada 2023-08-12 15:38:14 UTC

ビルドプロセス上でファイルの更新をチェックしながら出力するためのライブラリ tool/lib/output.rb でコマンドラインオプションに --no-color を追加して端末出力の色付けを強制的に抑制できるようにしています。

[de4a1ca792] Nobuyoshi Nakada 2023-08-12 15:38:45 UTC

さらに同じく tool/lib/output.rb の処理するコマンドラインオプションに --create-only と --overwrite というのを追加しています。 write メソッドのキーワード引数のデフォルトを指定するもので利用しているツール側では指定しない場合にオプションで変更できるようにしているみたいですが、デバッグ時の容易さのためかな?

[129663c4a8] Nobuyoshi Nakada 2023-08-22 09:11:00 UTC

さらに tool/lib/output.rb の --color オプションに引数を受付けるようにして always, never, auto (出力が端末かどうか判定する)などの指定もできるようにしています。