JP2970785B2 - 資源割り付け装置 - Google Patents
資源割り付け装置Info
- Publication number
- JP2970785B2 JP2970785B2 JP3270940A JP27094091A JP2970785B2 JP 2970785 B2 JP2970785 B2 JP 2970785B2 JP 3270940 A JP3270940 A JP 3270940A JP 27094091 A JP27094091 A JP 27094091A JP 2970785 B2 JP2970785 B2 JP 2970785B2
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- cost
- unit
- instruction
- instruction sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Devices For Executing Special Programs (AREA)
Description
【0001】
【産業上の利用分野】本発明は、コンパイラが目的コー
ドを生成する際に、生きている変数に資源を割り付ける
装置に関する。
ドを生成する際に、生きている変数に資源を割り付ける
装置に関する。
【0002】
【従来の技術】コンパイラは高級言語から目的コードで
あるアセンブラソースコード又はマシン語を作成する手
段としてよく知られている。一般にコンパイラは、目的
コードを生成する際、演算に必要な値がその演算の時点
で、コンピュータ内部の高速な記憶装置であるレジスタ
内に入っているようにして命令列を生成する。また、そ
の演算の時点では不要であるが他の演算で必要となる値
は、レジスタ、またはコンピュータ内部のより低速な記
憶装置であるメモリ、に入っているようにする。
あるアセンブラソースコード又はマシン語を作成する手
段としてよく知られている。一般にコンパイラは、目的
コードを生成する際、演算に必要な値がその演算の時点
で、コンピュータ内部の高速な記憶装置であるレジスタ
内に入っているようにして命令列を生成する。また、そ
の演算の時点では不要であるが他の演算で必要となる値
は、レジスタ、またはコンピュータ内部のより低速な記
憶装置であるメモリ、に入っているようにする。
【0003】この時、レジスタとメモリとを合わせて資
源と呼び、値を入れるために資源上に置かれる枠組を変
数と呼び、どの変数をどの資源上に置くかを決定するこ
とを資源割り付けと呼ぶ。資源割り付けを行う際、レジ
スタの数には限りがあるため、変数の使用頻度に応じ
て、使用頻度の低い変数はメモリ上に置いておき、その
変数を用いた演算を行う際に、その変数をレジスタ上に
読みだしできてから演算を行うといった手法をとる。
源と呼び、値を入れるために資源上に置かれる枠組を変
数と呼び、どの変数をどの資源上に置くかを決定するこ
とを資源割り付けと呼ぶ。資源割り付けを行う際、レジ
スタの数には限りがあるため、変数の使用頻度に応じ
て、使用頻度の低い変数はメモリ上に置いておき、その
変数を用いた演算を行う際に、その変数をレジスタ上に
読みだしできてから演算を行うといった手法をとる。
【0004】また、プログラム内で、変数の値が決定さ
れた時から、最後に演算に使用されるまで、その変数は
生きている、と称する。コンパイラの生成する目的コー
ドの性能を良くするためには、使用頻度の高い変数が、
なるべくレジスタ上に置かれるようにする方がよい。こ
のことを実現するために、従来は、変数相互の関係は無
視して、変数1つ1つを独立に扱い、その変数がプログ
ラム内で生きている期間の長さや、その変数が演算に使
用される頻度等に基づいて、レジスタに割り付けるため
の優先順位を決めていた。
れた時から、最後に演算に使用されるまで、その変数は
生きている、と称する。コンパイラの生成する目的コー
ドの性能を良くするためには、使用頻度の高い変数が、
なるべくレジスタ上に置かれるようにする方がよい。こ
のことを実現するために、従来は、変数相互の関係は無
視して、変数1つ1つを独立に扱い、その変数がプログ
ラム内で生きている期間の長さや、その変数が演算に使
用される頻度等に基づいて、レジスタに割り付けるため
の優先順位を決めていた。
【0005】
【発明が解決しようとする課題】しかしながら、このよ
うな従来の方法では、生きている変数同士の関係を考慮
に入れることができず、資源割り付けの精度が低かっ
た。このため、例えば2つの生きている変数の演算が必
要であるのに、それらの変数が互いに演算できないレジ
スタ間或いはメモリ間に格納されていて、実質的に演算
できなかったり、演算できたとしても大変時間がかかる
場合があることを避けることができない。
うな従来の方法では、生きている変数同士の関係を考慮
に入れることができず、資源割り付けの精度が低かっ
た。このため、例えば2つの生きている変数の演算が必
要であるのに、それらの変数が互いに演算できないレジ
スタ間或いはメモリ間に格納されていて、実質的に演算
できなかったり、演算できたとしても大変時間がかかる
場合があることを避けることができない。
【0006】本発明は、かかる問題点に鑑み、精度の高
い資源割り付け装置を提供することを目的とるものであ
る。
い資源割り付け装置を提供することを目的とるものであ
る。
【0007】
【課題を解決するための手段】本発明は、前記の目的を
達成するために、資源割り付け対象区間の生きている変
数中のいずれの変数にどのような資源を割り付けるかと
いう組合せのパタンを発生するパタン発生部と、資源割
り付け対象区間から式木を順に生成する式木生成部と、
割り付けパタンと式木とに対応する命令列を得る命令生
成規則の表であるテンプレートと、前記パタン発生部が
割り付けるパタンと前記式木生成部の生成する式木とに
対応する命令列を前記テンプレートから選択する命令選
択部と、命令列とその命令列を実行する際のコストの対
応表であるコストテーブルと、前記命令選択部が選択す
る命令列のコストを前記コストテーブルから検索するコ
スト検索部と、前記式木生成部が生成する全ての式木を
実行する際の総コストを前記コスト検索部によって得ら
れるコストから計算する総コスト計算部と、前記パタン
発生部の発生する全ての組合せのパタン中より前記総コ
スト計算部によって得られる総コストが最小になるパタ
ンを決定する最適パタン決定部を備えたことを特徴とす
る。
達成するために、資源割り付け対象区間の生きている変
数中のいずれの変数にどのような資源を割り付けるかと
いう組合せのパタンを発生するパタン発生部と、資源割
り付け対象区間から式木を順に生成する式木生成部と、
割り付けパタンと式木とに対応する命令列を得る命令生
成規則の表であるテンプレートと、前記パタン発生部が
割り付けるパタンと前記式木生成部の生成する式木とに
対応する命令列を前記テンプレートから選択する命令選
択部と、命令列とその命令列を実行する際のコストの対
応表であるコストテーブルと、前記命令選択部が選択す
る命令列のコストを前記コストテーブルから検索するコ
スト検索部と、前記式木生成部が生成する全ての式木を
実行する際の総コストを前記コスト検索部によって得ら
れるコストから計算する総コスト計算部と、前記パタン
発生部の発生する全ての組合せのパタン中より前記総コ
スト計算部によって得られる総コストが最小になるパタ
ンを決定する最適パタン決定部を備えたことを特徴とす
る。
【0008】
【作用】本発明の資源割り付け装置は、前記した構成に
より、パタン発生部が発生する割り付けパタンと、式木
生成部が生成する式木に対して、命令選択部が対応する
命令列を選択し、コスト検索部がコストを検索し、総コ
スト計算部が式木発生部の発生する全ての式木に対する
総コストを計算し、最適パタン決定部がパタン発生部の
発生する全ての組合せのパタン中より総コストが最小と
なるパタンを決定することを可能とするものである。
より、パタン発生部が発生する割り付けパタンと、式木
生成部が生成する式木に対して、命令選択部が対応する
命令列を選択し、コスト検索部がコストを検索し、総コ
スト計算部が式木発生部の発生する全ての式木に対する
総コストを計算し、最適パタン決定部がパタン発生部の
発生する全ての組合せのパタン中より総コストが最小と
なるパタンを決定することを可能とするものである。
【0009】
【実施例】以下、本発明の資源割り付け装置の一実施例
を図面を用いて説明する。図1は本発明の一実施例にお
ける資源割り付け装置の構成図である。図中、1はパタ
ン発生部で資源割り付けの組合せのパタンを発生するも
のである。資源割り付け組み合わせパタンとは、生きて
いる変数のうちいずれをレジスタにいずれをメモリに割
り付けるかを示すもの、言い換えれば、変数と資源との
対応を示すものである。
を図面を用いて説明する。図1は本発明の一実施例にお
ける資源割り付け装置の構成図である。図中、1はパタ
ン発生部で資源割り付けの組合せのパタンを発生するも
のである。資源割り付け組み合わせパタンとは、生きて
いる変数のうちいずれをレジスタにいずれをメモリに割
り付けるかを示すもの、言い換えれば、変数と資源との
対応を示すものである。
【0010】図2はソースプログラムそのもの又はそれ
をコンパイラ内部で処理できるように作り直した式にお
いて存在する変数(a,b,c,t1 ,t2 )を用い
て、資源割り付けを行うための説明図である。各変数の
下方に引かれている垂線は、その変数が生きている区間
を示す。この区間のうちα区間は全ての変数が生きてい
る。今、資源として4つのレジスタとメモリmが存在す
るとするなら、上記変数に資源を割り付けるパタンとし
ては、例えば図中最下段のように複数個得られる。
をコンパイラ内部で処理できるように作り直した式にお
いて存在する変数(a,b,c,t1 ,t2 )を用い
て、資源割り付けを行うための説明図である。各変数の
下方に引かれている垂線は、その変数が生きている区間
を示す。この区間のうちα区間は全ての変数が生きてい
る。今、資源として4つのレジスタとメモリmが存在す
るとするなら、上記変数に資源を割り付けるパタンとし
ては、例えば図中最下段のように複数個得られる。
【0011】図1において、2は式木生成部で資源割り
付け対象区間から式木を順に生成する。ここで、資源割
り付け対象区間とは、資源の割り付けを矛盾なく行える
最大の区間で、一般には、一つの関数全体又はプログラ
ム全体を資源割り付け対象区間となりうる。式木とは図
3に示すような演算子OPと葉LFが連結された構造を
いう。
付け対象区間から式木を順に生成する。ここで、資源割
り付け対象区間とは、資源の割り付けを矛盾なく行える
最大の区間で、一般には、一つの関数全体又はプログラ
ム全体を資源割り付け対象区間となりうる。式木とは図
3に示すような演算子OPと葉LFが連結された構造を
いう。
【0012】3はテンプレートで、どういった式木に対
してどういった資源が割り付けられた場合に、どういっ
た命令を出すかを示す対応表である。具体的にはこの対
応表は、式木の演算子の種類、型(情報の長さ)、式の
左辺、右辺及び演算結果に割り付けられる資源の種類に
よって命令の種類を選択する表である。ここで、命令と
は、アセンブラコード又はマクロ命令を指す。
してどういった資源が割り付けられた場合に、どういっ
た命令を出すかを示す対応表である。具体的にはこの対
応表は、式木の演算子の種類、型(情報の長さ)、式の
左辺、右辺及び演算結果に割り付けられる資源の種類に
よって命令の種類を選択する表である。ここで、命令と
は、アセンブラコード又はマクロ命令を指す。
【0013】4は命令選択部で、パタン発生部1から得
る資源組合せパタンと式木生成部2から得る式木とに基
づきテンプレート3から命令を選択する。5は命令とサ
イクル数の対応を示すコストテーブルである。ここでコ
ストとは、命令を実行するのに固有のサイクル数をい
う。一般によいコンパイラの生成する目的コードは総サ
イクル数が少ない。
る資源組合せパタンと式木生成部2から得る式木とに基
づきテンプレート3から命令を選択する。5は命令とサ
イクル数の対応を示すコストテーブルである。ここでコ
ストとは、命令を実行するのに固有のサイクル数をい
う。一般によいコンパイラの生成する目的コードは総サ
イクル数が少ない。
【0014】6は前記命令選択部4が選択した命令列の
コストを前記コストテーブル5から検索するコスト検索
部である。7は前記式木生成部が生成する全ての式木に
対する総コストを前記コスト検索部6から計算する総コ
スト計算部である。8は前記パタン発生部1の発生する
全ての組合せのパタンのうち前記総コスト計算部7で得
られる総コストが最小になるパタンを決定する最適パタ
ン決定部である。
コストを前記コストテーブル5から検索するコスト検索
部である。7は前記式木生成部が生成する全ての式木に
対する総コストを前記コスト検索部6から計算する総コ
スト計算部である。8は前記パタン発生部1の発生する
全ての組合せのパタンのうち前記総コスト計算部7で得
られる総コストが最小になるパタンを決定する最適パタ
ン決定部である。
【0015】9は特定の生きている変数に特定の資源を
割り付けた際において資源割り付け対象区間の全ての式
木を実行した場合の総コストを推定する総コスト推定部
である。10は前記総コスト推定部によって得られるコ
ストの推定値を用いて発生するパタンを選抜するパタン
選抜部である。11は対象プログラムの目的に応じてパ
タン選抜を行なうかどうかを選択するパタン選抜選択部
である。次に、前述のように構成された資源割り付け装
置の動作を説明する。 (1)パタン選抜選択部11は、オペレータの指定に基
づき、総コスト推定部9、もしくは、パタン発生部1を
起動する。開発やデバッグの途中のような場合は、精度
はあまり高くなくても高速な資源割り付けが行なわれる
方がプログラム開発の効率がよいので、パタン選抜を行
ない、デバッグ終了後製品化時には、時間はかかるがよ
り高精度の資源割り付けが行なわれるように、パタン選
抜を行なわないようにする。
割り付けた際において資源割り付け対象区間の全ての式
木を実行した場合の総コストを推定する総コスト推定部
である。10は前記総コスト推定部によって得られるコ
ストの推定値を用いて発生するパタンを選抜するパタン
選抜部である。11は対象プログラムの目的に応じてパ
タン選抜を行なうかどうかを選択するパタン選抜選択部
である。次に、前述のように構成された資源割り付け装
置の動作を説明する。 (1)パタン選抜選択部11は、オペレータの指定に基
づき、総コスト推定部9、もしくは、パタン発生部1を
起動する。開発やデバッグの途中のような場合は、精度
はあまり高くなくても高速な資源割り付けが行なわれる
方がプログラム開発の効率がよいので、パタン選抜を行
ない、デバッグ終了後製品化時には、時間はかかるがよ
り高精度の資源割り付けが行なわれるように、パタン選
抜を行なわないようにする。
【0016】パタン選抜を行うときは、処理は次の
(2)へと進み、一方パタン選抜を行わないときは、処
理が(4)までジャンプする。 (2)総コスト推定部9は、ある生きている変数にある
資源を割り付けた時の総コストを推定する。この推定に
は、例えば、その生きている変数の参照定義される回
数、参照定義される場所のループの深さ、生存区間の長
さ等、他の生きている変数と独立なパラメータのみを用
いる。
(2)へと進み、一方パタン選抜を行わないときは、処
理が(4)までジャンプする。 (2)総コスト推定部9は、ある生きている変数にある
資源を割り付けた時の総コストを推定する。この推定に
は、例えば、その生きている変数の参照定義される回
数、参照定義される場所のループの深さ、生存区間の長
さ等、他の生きている変数と独立なパラメータのみを用
いる。
【0017】(3)パタン選抜部10では、(2)の結
果を用いて、明らかに不利であると思われる割り付けパ
タンを取り除き、有利であると思われるパタンを選抜す
る。 (4)パタン発生部1は、パタン選抜が行なわれたのな
ら、その選抜されたパタンのみを、選抜が行なわれなか
ったのなら、考え得る全てのパタンを順に発生する。
果を用いて、明らかに不利であると思われる割り付けパ
タンを取り除き、有利であると思われるパタンを選抜す
る。 (4)パタン発生部1は、パタン選抜が行なわれたのな
ら、その選抜されたパタンのみを、選抜が行なわれなか
ったのなら、考え得る全てのパタンを順に発生する。
【0018】(5)式木生成部2は資源割り付け対象区
間から式木を順に生成する。 (6)命令選択部4は、パタン発生部1の発生したパタ
ンおよび式木生成部2の生成した式木に対応する命令列
をテンプレート3から選択する。 (7)コスト検索部6は命令選択部4の選択した命令列
のコストをコストテーブル5から検索する。
間から式木を順に生成する。 (6)命令選択部4は、パタン発生部1の発生したパタ
ンおよび式木生成部2の生成した式木に対応する命令列
をテンプレート3から選択する。 (7)コスト検索部6は命令選択部4の選択した命令列
のコストをコストテーブル5から検索する。
【0019】(8)総コスト計算部7は、式木生成部2
の発生する全ての式木に対する総コストをコスト検索部
6の検索したコストから計算する。この総コストは、例
えば、対象となる式木が含まれているループの深さで重
み付けされたコストの加算等によって求められる。 (9)最適パタン決定部8は、パタン発生部1の発生す
るパタンのうち、総コスト計算部7で得られるコストが
最小なパタンを決定する。
の発生する全ての式木に対する総コストをコスト検索部
6の検索したコストから計算する。この総コストは、例
えば、対象となる式木が含まれているループの深さで重
み付けされたコストの加算等によって求められる。 (9)最適パタン決定部8は、パタン発生部1の発生す
るパタンのうち、総コスト計算部7で得られるコストが
最小なパタンを決定する。
【0020】尚、本発明の資源割り付け装置は上記実施
例の構成に限定されるものではなく、本発明の要旨を逸
脱していない範囲で変更実施することができる。例え
ば、コストテーブルの代わりに命令列とその命令列がメ
モリ上で占める領域数の対応表である必要領域テーブル
を持ち、コスト検索部の代わりに前記命令選択部が選択
する命令列がメモリ上で占める領域を前記必要領域テー
ブルから検索する検索部を持ち、総コスト計算部の代わ
りに前記式木生成部が生成する全ての式木がメモリ上で
示す総領域数を前記必要領域検索部によって得られる必
要領域から計算する総領域計算部を持ち、最適パタン決
定部の代わりに前記パタン発生部の発生する全ての組合
わせのパタン中より前記領域計算部によって得られる総
領域が最小になるパタンを決定する最適パタン決定部を
持った構成とすることができる。
例の構成に限定されるものではなく、本発明の要旨を逸
脱していない範囲で変更実施することができる。例え
ば、コストテーブルの代わりに命令列とその命令列がメ
モリ上で占める領域数の対応表である必要領域テーブル
を持ち、コスト検索部の代わりに前記命令選択部が選択
する命令列がメモリ上で占める領域を前記必要領域テー
ブルから検索する検索部を持ち、総コスト計算部の代わ
りに前記式木生成部が生成する全ての式木がメモリ上で
示す総領域数を前記必要領域検索部によって得られる必
要領域から計算する総領域計算部を持ち、最適パタン決
定部の代わりに前記パタン発生部の発生する全ての組合
わせのパタン中より前記領域計算部によって得られる総
領域が最小になるパタンを決定する最適パタン決定部を
持った構成とすることができる。
【0021】又、コストテーブルとテンプレートの代わ
りに、割り付けパタンと式木と命令生成規則とコストと
の対応表であるコストテンプレートを持ち、命令選択部
とコスト検索部の代わりに、命令列の選択と同時にコス
トの検索を行う命令コスト検索部を持った構成とするこ
ともできる。
りに、割り付けパタンと式木と命令生成規則とコストと
の対応表であるコストテンプレートを持ち、命令選択部
とコスト検索部の代わりに、命令列の選択と同時にコス
トの検索を行う命令コスト検索部を持った構成とするこ
ともできる。
【0022】
【発明の効果】本発明は以上説明したように、他の生き
ている変数にどのような資源が割り付けられたかという
生きている変数同士の関係を考慮に入れて資源割り付け
を行うので、生きている変数同士の演算が実質上不可能
になったり、時間がかかるといった従来における問題は
確実に解消できる。
ている変数にどのような資源が割り付けられたかという
生きている変数同士の関係を考慮に入れて資源割り付け
を行うので、生きている変数同士の演算が実質上不可能
になったり、時間がかかるといった従来における問題は
確実に解消できる。
【図1】本発明の一実施例の資源割り付け装置の構成図
である。
である。
【図2】資源割り付け組合せパタンを作成するための説
明図である。
明図である。
【図3】式木の例を示す図である。
1 パタン発生部 2 式木生成部 3 テンプレート 4 命令選択部 5 コストテーブル 6 コスト検索部 7 総コスト計算部 8 最適パタン決定部 9 総コスト推定部 10 割り付けパタン選抜部 11 パタン選抜選択部
フロントページの続き (72)発明者 漆原 誠一 大阪府門真市大字門真1006番地 松下電 器産業株式会社内 (56)参考文献 特開 平2−236638(JP,A) 特開 昭62−144247(JP,A) 特開 平1−130230(JP,A) 日経バイト44(1988.4)日経BP社 P.106〜113「最適化競争続くCコン パイラ」
Claims (5)
- 【請求項1】 資源割り付け対象区間の生きている変数
中のいずれの変数にどのような資源を割り付けるかとい
う組合せのパタンを発生するパタン発生部と、 資源割り付け対象区間から式木を順に生成する式木生成
部と、 割り付けパタンと式木とに対応する命令列を得る命令生
成規則の表であるテンプレートと、 前記パタン発生部が発生する割り付けるパタンと前記式
木生成部の生成する式木とに対応する命令列を前記テン
プレートから選択する命令選択部と、 命令列とその命令列を実行する際の動作クロック数に相
当するコストとの対応表であるコストテーブルと、 前記命令選択部が選択する命令列のコストを前記コスト
テーブルから検索するコスト検索部と、 前記式木生成部が生成する全ての式木を実行する際の総
コストを前記コスト検索部によって得られるコストから
計算する総コスト計算部と、 前記パタン発生部の発生する全ての組合せのパタン中よ
り前記総コスト計算部によって得られる総コストが最小
になるパタンを決定する最適パタン決定部と、を備えた
ことを特徴とする資源割り付け装置。 - 【請求項2】 特定の生きている変数に特定の資源を割
り付けた際の資源割り付け対象区間の全ての式木を実行
する総コストを推定する総コスト推定部と、発生する資
源割り付けパタンを前記総コスト推定部によって得られ
るコストの推定値を用いて選抜するパタン選抜部と、 を持つことを特徴とする請求項1記載の資源割り付け装
置。 - 【請求項3】 資源割り付けパタンの選抜を行なうかど
うかを対象プログラムの目的に応じて選択するパタン選
抜選択部を持つことを特徴とする請求項2記載の資源割
り付け装置。 - 【請求項4】 資源割り付け対象区間の生きている変数
中のいずれの変数にどのような資源を割り付けるかとい
う組合せのパタンを発生するパタン発生部と、 資源割り付け対象区間から式木を順に生成する式木生成
部と、 割り付けパタンと式木とに対応する命令列を得る命令生
成規則の表であるテンプレートと、 前記パタン発生部が発生する割り付けるパタンと前記式
木生成部の生成する式木とに対応する命令列を前記テン
プレートから選択する命令選択部と、 命令列とその命令列がメモリ上で占める領域数の対応表
である必要領域テーブルと、 前記命令選択部が選択する命令列がメモリ上で占める領
域数を前記必要領域テーブルから検索する必要領域検索
部と、 前記式木生成部が生成する全ての式木がメモリ上で占め
る総領域数を前記必要領域検索部によって得られる必要
領域から計算する総領域計算部と、 前記パタン発生部の発生する全ての組合せのパタン中よ
り前記総領域計算部によって得られる総領域が最小にな
るパタンを決定する最適パタン決定部と、 を備えることを特徴とする資源割り付け装置。 - 【請求項5】 コストテーブルとテンプレートの代わり
に割り付けパタンと式木と命令生成規則とコストとの対
応表であるコストテンプレートを持ち、命令選択部とコ
スト検索部の代わりに、命令列の選択と同時にコストの
検索を行なう命令コスト検索部を持つことを特徴とする
請求項1記載の資源割り付け装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3270940A JP2970785B2 (ja) | 1991-10-18 | 1991-10-18 | 資源割り付け装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3270940A JP2970785B2 (ja) | 1991-10-18 | 1991-10-18 | 資源割り付け装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05108373A JPH05108373A (ja) | 1993-04-30 |
JP2970785B2 true JP2970785B2 (ja) | 1999-11-02 |
Family
ID=17493126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3270940A Expired - Fee Related JP2970785B2 (ja) | 1991-10-18 | 1991-10-18 | 資源割り付け装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2970785B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0947922B1 (en) | 1998-04-01 | 2006-09-27 | Matsushita Electric Industrial Co., Ltd. | Compiler |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4782444A (en) * | 1985-12-17 | 1988-11-01 | International Business Machine Corporation | Compilation using two-colored pebbling register allocation method such that spill code amount is invariant with basic block's textual ordering |
JPH02236638A (ja) * | 1989-03-10 | 1990-09-19 | Hitachi Ltd | レジスタ割付け管理方式 |
-
1991
- 1991-10-18 JP JP3270940A patent/JP2970785B2/ja not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
日経バイト44(1988.4)日経BP社 P.106〜113「最適化競争続くCコンパイラ」 |
Also Published As
Publication number | Publication date |
---|---|
JPH05108373A (ja) | 1993-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4763255A (en) | Method for generating short form instructions in an optimizing compiler | |
Chow et al. | Register allocation by priority-based coloring | |
US6199093B1 (en) | Processor allocating method/apparatus in multiprocessor system, and medium for storing processor allocating program | |
US6725448B1 (en) | System to optimally create parallel processes and recording medium | |
US5963972A (en) | Memory architecture dependent program mapping | |
CA2010068C (en) | Partitioning case statements for optimal execution performance | |
US5937188A (en) | Instruction creation device | |
US20050044538A1 (en) | Interprocedural computing code optimization method and system | |
US6425124B1 (en) | Resource allocation device for reducing the size and run time of a machine language program | |
JP2000222220A (ja) | 動的コンパイル時期決定方法、バイトコード実行モード選択方法、及びコンピュータ | |
US20010049818A1 (en) | Partitioned code cache organization to exploit program locallity | |
US6785801B2 (en) | Secondary trace build from a cache of translations in a caching dynamic translator | |
US6360360B1 (en) | Object-oriented compiler mechanism for automatically selecting among multiple implementations of objects | |
US5557797A (en) | Scheduling method for automatically developing hardware patterns for integrated circuits | |
JP2970785B2 (ja) | 資源割り付け装置 | |
US20040199907A1 (en) | Compiler and method for optimizing object codes for hierarchical memories | |
Andrade et al. | Accurate prediction of the behavior of multithreaded applications in shared caches | |
JPH01118931A (ja) | プログラム変換方式 | |
JP3431568B2 (ja) | プログラム変換装置、プログラム変換方法及びプログラム記録媒体 | |
JPH06202875A (ja) | インライン展開による最適化を行うコンパイラ | |
EP0180077A2 (en) | A data processing machine for compiling computer programs | |
US6912640B2 (en) | Method to partition large code across multiple e-caches | |
JPH086797A (ja) | 定数参照最適化処理装置 | |
JP6981087B2 (ja) | 情報処理装置、方法、及びプログラム | |
Chow | The Compiler System |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |