特許
J-GLOBAL ID:200903052023414100

レジスタ割当て部を用いてスタック内のレジスタを最適化するための方法、装置及びコンピュ-タプログラムプロダクト

発明者:
出願人/特許権者:
代理人 (1件): 大島 陽一
公報種別:公開公報
出願番号(国際出願番号):特願平11-207155
公開番号(公開出願番号):特開2000-066901
出願日: 1999年07月22日
公開日(公表日): 2000年03月03日
要約:
【要約】【課題】 従来のレジスタ割当て技術及び最適化技術をレジスタスタックとして構成されたレジスタに適用する方法、装置及びプログラムプロダクトを実現する。【解決手段】 コンパイラがレジスタスタックのスタックレジスタにアクセスするための効率的なコードを生成することができる装置、方法及びコンピュータプログラムプロダクトが開示される。本発明はコンパイラの中間表現内の3-オペランド命令を、1つ或いはそれ以上の3-オペランド未満の命令に変換することにより動作する。また本発明は命令のオペランドアドレス指定を、疑似名前付きレジスタへのアクセスから、レジスタスタックへのスタックオフセットを用いるスタックレジスタへのアクセスに変換する。また本発明はレジスタスタック入替えに応じて各命令においてレジスタスタック状態を判定し、それに応じてスタックレジスタへの各後続アクセスに対してスタックオフセットをマップする。
請求項(抜粋):
ターゲットコンピュータアーキテクチャ内に複数のスタックレジスタを備えるレジスタスタックを効率的に用いるためのコンピュータ制御による方法であって、前記方法が、(a)3-オペランド命令を1つ或いはそれ以上の3-オペランド未満の命令に変換する過程と、(b)前記1つ或いはそれ以上の3-オペランド未満の命令を解析し、1つ或いはそれ以上の疑似レジスタに対する存続期間情報を判定する過程と、(c)前記存続期間情報に応じて、ポップ動作を、前記1つ或いはそれ以上の3-オペランド未満の命令に挿入する過程と、(d)オペランド参照を、前記疑似レジスタから前記レジスタスタックへのオフセットに変換し、前記複数のスタックレジスタを参照する過程とを有することを特徴とするコンピュータ制御による方法。
IPC (3件):
G06F 9/45 ,  G06F 9/318 ,  G06F 9/34 340
FI (4件):
G06F 9/44 322 H ,  G06F 9/34 340 A ,  G06F 9/30 320 A ,  G06F 9/44 322 F

前のページに戻る