ruby-trunk-changes r63247 - r63251

今日は VM 命令列の最適化の拡張などがありました。

kazu: r63247 2018-04-23 21:09:21 +0900

標準添付ライブラリ uriURI::Generic#port の rdoc 用コメントで文字列としてかえってくるように書かれてたので整数でかえってくるように変更しています。

nobu: r63248 2018-04-23 21:51:18 +0900

iseq_peephole_optimize() による VM 命令列の最適化で、jump 命令で飛んだ先で即 leave している場合に jump せずにその場で leave するようにする最適化で、jump 先に operand のない命令1つだけはさんで leave だった時もインライン化というか命令をコピーするようにしています。 dniobj の代入がトリッキーだなぁ。

k0kubun: r63249 2018-04-24 01:20:45 +0900

r63212 の attr_reader によるメソッドのインライン化の revert。 ある条件でうまく動かないことがあったみたいです。

svn: r63250 2018-04-24 01:20:46 +0900

version.h の日付更新。

nobu: r63251 2018-04-24 08:46:26 +0900

標準添付ライブラリ webrick のテストで極端に長いヘッダを含むリクエストを受け取った時にソケットを閉じた時のクライアント側の例外として macOS 10.10 では Errno::EPROTOTYPE が発生することがあるそうでこれも捕捉するようにしています。