ruby-trunk-changes r65472 - r65493

今日は昨日の Transient Heap の write barrier 漏れによる不具合修正などがありました。

naruse: r65472 2018-10-31 20:08:07 +0900

addr2line.c で "//" による行コメントが残っていたので /* */ のコメントに変更しています。

k0kubun: r65473 2018-10-31 21:21:55 +0900

r65468 を revert した r65471 を revert しています。ってことはまた struct rb_mjit_unit の linked list の実装に ccan/list を利用するようにして、追加の convert_unit_to_func() の修正も一緒に入れています。 https://bugs.ruby-lang.org/issues/14867#note-112 のコメントにあるパッチ。

k0kubun: r65474 2018-10-31 22:12:39 +0900

なのですが CI で deadlock が発生したとのことで r65473 も revert されています。

normal: r65475 2018-11-01 08:55:22 +0900

で r65468 や r65471 の再々トライで rb_mjit_unit の linked list に ccan/list を利用するように書き換えています。この後 revert されてないのでこれで成功したかも。

svn: r65476 2018-11-01 08:55:24 +0900

version.h の日付更新。

k0kubun: r65477 2018-11-01 10:47:26 +0900

mjit_worker.c の compact_units という変数のコメントで free_list() で解放されることを追記しています。

k0kubun: r65478 2018-11-01 11:50:10 +0900

wercker.yml の test-all をサブディレクトリ毎にかなり細かく分離しています。テストのエラーを多く発見するためみたいです。

ko1: r65479 2018-11-01 11:50:35 +0900

昨日の r65454 での T_HASH 型オブジェクトで小さい Hash の時に Transient Heap を使う実装にした時に write barrier の入れ忘れがあったのを修正しています。

k0kubun: r65480 2018-11-01 13:20:26 +0900

拡張ライブラリ win32ole のテストで(たぶん MJIT 有効時に)ランダムに失敗することがあるみたいなので5回までリトライする assertion メソッドを実装してこれを使うようにしています。

k0kubun: r65481 2018-11-01 13:43:40 +0900

よくわかってませんが wercker.yml でジョブの書きかたを変更して --jit オプションつきと --jit-wait オプションつきの処理の並行実行される部分を増やそうとしているようです。

k0kubun: r65482 2018-11-01 13:46:46 +0900

wercker.yml で(たぶん r65481 で)不要になった test-mjit のセクションを削除しています。

k0kubun: r65483 2018-11-01 14:03:59 +0900

wercker.yml の pipeline (wercker ではそう呼ぶらしい)の名前を改名しています。

k0kubun: r65484 2018-11-01 14:17:08 +0900

wercker.yml の test-all で webrick のテストを実行するステップ(?)の名前に allow failure というのを追記しています。

usa: r65485 2018-11-01 14:19:16 +0900

rubyspec の Socket.getnameinfo のテストでひとつのホスト名が複数のアドレスに紐づけられてると失敗する spec を削除しています。 [ruby-core:88828] [Bug #15067]

k0kubun: r65486 2018-11-01 15:03:29 +0900

wercker.yml の pipeline の処理のわけかたをさらに調整しています。

kazu: r65487 2018-11-01 15:36:04 +0900

Encoding::Converter#putback の rdoc 用コメントの call-seq にコロンがついてなくて rdoc のタグとして機能していなかったのを修正しています。 https://github.com/ruby/ruby/pull/1999

kazu: r65488 2018-11-01 16:25:50 +0900

r65487 と同様に call-seq のコロン忘れを openssl と win32ole でも修正しています。

k0kubun: r65489 2018-11-01 16:49:06 +0900

wercker.yml で test_frozen というテストが --jit-wait オプションつきの時に失敗するらしく exclude 対象に追加しています。さらにテストの配分を調整しています。

svn: r65490 2018-11-01 16:49:07 +0900

r65489 の新規追加ファイルの svn property 設定。

ko1: r65491 2018-11-01 17:15:42 +0900

common.mk に transient_heap.h への依存関係を追加しています。

ko1: r65492 2018-11-01 17:53:44 +0900

ビルド時に USE_TRANSIENT_HEAP というマクロを指定して Transient Heap 機能をオフにできるようにしています。

svn: r65493 2018-11-01 17:53:53 +0900

r65492 の行末の空白除去。