Key points are not available for this paper at this time.
複雑さを減らし、実装を簡素化するために、ほとんどのコンパイラは一連のパスまたはフェーズとして構成されています。各フェーズはコンパイルプロセスの特定の部分を実行します。最適化コンパイラにおいて、関数の割り当ておよびフェーズの適用順序は設計の重要な部分です。特に難しい問題は、フェーズの相互作用によって引き起こされるフェーズ順序の問題を回避するために、コード生成および最適化フェーズの配置です。本論文では、これらの問題を回避するように設計されたコンパイラ/リンカーの実装について議論します。この設計の重要な側面は、コンパイラとシステムリンカーの合成フェーズが同じ中間プログラム表現を共有することです。これにより2つの利点があります。コンパイラの合成フェーズは任意の順序で、繰り返し実行できるため、潜在的なフェーズ順序の問題を排除します。次に、コード選択を合成フェーズの任意の時点およびリンク時に呼び出すことができます。リンク時にコード選択を行う能力は、追加の最適化の多くの機会を提供します。このアプローチをCコンパイラで2つの異なるマシンで使用した効果に関する測定が示されます。
Benitez et al. (水曜日) はこの質問を研究しました。
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: