リターゲッタブルコード生成(<特集>最新コンパイラ技術とCOINSによる実践)
スポンサーリンク
概要
- 論文の詳細を見る
コンパイラのバックエンドでは,(1)低水準中間表現からターゲットマシンの命令列への変換,(2)その命令列に対するレジスタ割付け,(3)命令スケジューリングなどの最適化,などが行われるが,それらのアルゴリズムを出来るだけマシンに依存しない形で表現し,マシン依存部分は,マシン特性の記述から機械的に作成されるようにするのがリターゲッタブルコード生成の一般的な方法である.本解説では,(1)について,中間表現と命令列とのパターンマッチングの方法に使われるLR構文解析やダイナミック・プログラミングのいくつかの方法を説明し,(3)について,命令スケジューリングとソフトウェア・パイプライニングの一般的な方法と問題点などを説明する.最後に,実例として,COINSとGCCでそれぞれ使われている方法を説明する.
- 2008-01-25
著者
関連論文
- マルチメディアSIMD命令活用のためのデータサイズ推論
- TMDによるコード生成 : SPARCOを例題として(21世紀のコンパイラ道しるべ・・COINSをベースにして,連載4)
- 超並列計算機用NCX言語処理系の試作
- データ並列言語NCXの分散メモリMIMD並列計算機用コンパイラ
- 条件分岐を考慮したソフトウェアパイプラインにおけるレジスタ割付け
- COINSコンパイラ・インフラストラクチャの開発(ソフトウェア論文,最新コンパイラ技術とCOINSによる実践)
- 疎行列演算プログラムの並列化の一方法
- 属性文法の複雑さ (<解説> 属性文法とその応用-IV)
- 拡張1パス型属性文法に基づくコンパイラ生成系の実現
- 属性値主導型 拡張LL(1)文法の提案
- CP-PACSのアーキテクチャの概要
- スライドレジスタ割付問題の厳密解法
- スライドウィンドウを考慮したレジスタ割付
- 条件分岐を含むループの最適なソフトウェア・パイプライニング
- レジスタ割付からみたスライドウインドウアーキテクチャの優位性について
- スライドウインドウを考慮したレジスタ割付
- 5L-2 条件分岐向けソフトウェアパイプラインスケジューラの実装
- 条件分岐を考慮したループ並列化の1手法
- 4L-7 コンパイラにおける記号表処理部の自動生成系
- 字句解析器生成系での最短一致法の提案
- 属性文法に基づいたインクリメンタルなPascal-Sコンパイラ
- LR属性文法に基づいたインクリメンタルな属性評価
- インクリメンタルなLR構文解析の一方式の提案とその評価
- インクリメンタルなLR構文解析の一方式の提案とその評価
- インクリメンタルなLR構文解析器におけるエラー処理方式の提案
- HIRの説明と簡単な言語のフロントエンド(21世紀のコンパイラ道しるべ・・COINSをベースにして,連載2)
- 概要(21世紀のコンパイラ道しるべ : COINSをベースにして)
- 拡張1パス型属性文法によるコンパイラ生成系の実現
- リターゲッタブルコード生成(最新コンパイラ技術とCOINSによる実践)
- 1パス型属性文法におけるバックパッチ処理の自動生成
- LIRの説明とバックエンドの概要説明(21世紀のコンパイラ道しるべ・・COINSをべースにして)
- LIR : COINSプロジェクトの低水準中間言語
- データ並列型言語NCXにおける通信コストと仮想プロセッサマッピング
- スライドウィンドウを考慮したレジスタ割り付け
- 1パス型属性文法に基づくコンパイラ生成系Rie
- ソフトウェア・パイプライニングの一実現法
- 時相属性文法を用いたユーザインタフェース記述のX-Windowへの適用
- 演算子順位を利用した再帰的下向き構文解析器生成系の実現
- 3. 超並列計算機 CP-PACS のソフトウェア ( 計算物理学と超並列計算機 : CP-PACS計画)
- 正規右辺属性文法の一提案
- 時相属性文法によるグラフィカル・ユーザーインターフェースの記述
- 多次元文脈自由文法とそのLLおよびLR構文解析法
- 再帰的下向き構文解析における演算子順位構文解析