これらは, C2 JIT Compiler 内の処理フェーズを表すクラス. より具体的に言うと, 低レベル中間語(MachNode)の生成処理を表すクラス.
Phase クラスの具象サブクラスの1つ.
高レベル中間語(Ideal)から低レベル中間語(MachNode)への変換を行う.
Compile::Code_Gen() 内で(のみ)使用されている.
See: here for details
Matcher クラス内で使用される補助クラス.
特殊な Node_Stack クラス. Matcher クラスの処理対象の Node を入れておくために使用される (新しい処理対象が出てくるたびに Node をこのスタックに登録していく. スタックが空になったら処理が完了する).
以下の箇所で(のみ)使用されている.
そして, これらの関数は現在は以下のパスで(のみ)呼び出されている.
Matcher::match() -> Matcher::find_shared() -> Matcher::xform()
実際のスタックとしての機能はスーパークラスである Node_Stack によって実現されている.
See: here for details
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.