ruby-trunk-changes r59653 - r59657

今日は VM 命令列の最適化の強化や標準添付ライブラリ csv の最適化などがありました。

nobu: r59653 2017-08-25 11:37:38 +0900

iseq_peephole_optimize() で最適化の内容を説明するコメントを、実際に最適化処理をする分岐のブロックの中に移動しています。

svn: r59654 2017-08-25 11:37:39 +0900

version.h の日付更新。

nobu: r59655 2017-08-25 12:33:32 +0900

VM 命令列の最適化 iseq_peephole_optimize() で同じラベルへの条件付きジャンプと無条件ジャンプ命令が連続していた時に pop (条件付きジャンプに使うためのVMスタックのぶんを取り除くため)と無条件 jmp に変換する最適化を行なっています。

nobu: r59656 2017-08-25 12:41:43 +0900

同じく iseq_peephole_optimize() でジャンプ命令関係の最適化後に到達しなくなった命令の削除を行うようにしています。

glass: r59657 2017-08-25 17:13:32 +0900

標準添付ライブラリ csvCSV::Table#to_a と CSV::Table#to_csv で中間オブジェクトの配列を行ごとに生成しないようにする最適化を行なっています。 https://github.com/ruby/ruby/pull/946