今日は JIT 実装の修正、opcache の不要コード削除の最適化修正、tsrm.m4 からの sinclude の利用の削除、sapi/cli/README の削除、array_map() の警告文に誤った型が出てくる問題の修正、JsonSerializable で use after free が起きる場合がある問題の修正、不要コードの削除、DateInterval オブジェクトを比較不可能として警告を出すようにする修正があった!
2019-04-23
dstogov: Fixed JIT for DEFINED opcode
- https://github.com/php/php-src/commit/499b25c3036cc6e61ab1b024ed77e105f3249ba4
- ext/opcache/jit で、defined() の JIT 実装を修正
dstogov: Use _zend_hash_find_known_hash() for IS_CONST operand
- https://github.com/php/php-src/commit/74153193c6309c00d14888a36de1bbedac8a6eec
- ext/opcache/jit で、ハッシュテーブル参照時にオペランドが IS_CONST なら zend_hash_find() でなく _zend_hash_find_known_hash() を使うよう修正
dstogov: Remove unused BIND_STATIC insructions
- https://github.com/php/php-src/commit/1827d784b5c5ce688b635300c3f9770b4fb78227
- [7.4~]
- ext/opcache で、最適化の際に不要な ZEND_BIND_STATIC 命令を削除するよう修正
petk: Remove sinclude from tsrm.m4
- https://github.com/php/php-src/commit/07a95b401799e60a53fb080936da57758e6aaa44
- [7.4~]
- ビルドシステムで、tsrm.m4 から sinclude の利用を削除
- スタンドアロンの TSRM のビルドで使われていたが、もうそんなことはやらない前提の昨今なので
petk: [ci skip] Remove CLI sapi README
- https://github.com/php/php-src/commit/9443bd1bbf54794dd62b945ee2907a2535f41639
- [7.4~]
- sapi/cli/README を削除
- PHP マニュアルがあるからいいでしょ、ということらしい
nikic: Fixed bug #77931
- https://github.com/php/php-src/commit/cedee4408b21baed6376a2702d7d8d01e8d4a111
- [7.3~]
- array_map() の警告文に誤った型が出てくる問題の修正
nikic: Fixed bug #77843
- https://github.com/php/php-src/commit/4831e150c5ada631c1480098b8a42cbf024d8899
- [7.2~]
- ext/json で、JsonSerializable で use after free が起きる場合がある問題の修正
- 要素が参照の配列を扱う際に内部的に変な変更がかかる可能性があったくさい
bugreportuser: Remove duplicate zend_unset_timeout()
- https://github.com/php/php-src/commit/d65f93f92b8a924ee74592d182df1a6832f774f0
- [7.4~]
- zend_unset_timeout() を無駄に呼んでいる箇所があったのを修正
nikic: Make DateInterval objects uncomparable
- https://github.com/php/php-src/commit/3cfbbf29561f931560e108fb47bbdef84e12fd5f
- [7.4~]
- ext/date で、DateInterval オブジェクトを比較不可能として警告を出すよう修正
- 中身が違ってても全部等しいものとして扱われていておかしかった
dstogov: Implemented JIT for SWITCH_LONG/SWITCH_STRING
- https://github.com/php/php-src/commit/4c25fc5479dd7e40a971aeaf34799aa77383cc3d
- ext/opcache/jit で、SWITCH_LONG/SWITCH_STRING 用の JIT コード生成を実装