■ ----- 16:00 CSS JIT / @Constellation atnd.org/events/52121 #browser_gazer
2014-07-13 16:00:10- CSSセレクタはものすごい回数が実行される - この要素にはこのスタイルを当てるというだけでも多い - QuerySelectorでも大量に行われる #browser_gazer
2014-07-13 16:01:22- QuerySelectorの実装 - rootから全ての要素を列挙する - 一個一個セレクタにマッチするかどうかを確認(C++動くの凄い - マッチしたものを返す #browser_gazer
2014-07-13 16:02:56class="rabbit house"よりclass="rabbit-house"がいいのではと思った #browser_gazer
2014-07-13 16:03:21「対象要素以下の全要素を列挙して、指定セレクタに一致するかどうかを全てチェックする。C++やばい」 #browser_gazer
2014-07-13 16:03:48確か、ブラウザの高速化に関する論文(Servoでも引用されてる)で、計測した結果、処理時間の20%弱がCSS selector matchingに要されてるという研究結果があったはず #browser_gazer
2014-07-13 16:04:23- ~や+は関係性を示すもの(combinator) - div 単純な子孫(simple) - => 合わせてcompound selector #browser_gazer
2014-07-13 16:06:42右から評価するのって、基本的に「DOMに対してセレクターが一致するか」って評価方法を取るからかなー #browser_gazer
2014-07-13 16:09:39.@Constellation せんせ、ここらへんの調査結果で、ServoのSelector matchが最適化全然やってないのでコミットチャンスでpull req出してきた #browser_gazer
2014-07-13 16:09:49CSSセレクタにマッチしているかどうかの処理時にルールとDOMツリーに酔ってはバックトラック必要になる #browser_gazer
2014-07-13 16:10:31