JPH0535494A - 高級プログラム言語の対話型最適化コンパイル方式 - Google Patents

高級プログラム言語の対話型最適化コンパイル方式

Info

Publication number
JPH0535494A
JPH0535494A JP3211514A JP21151491A JPH0535494A JP H0535494 A JPH0535494 A JP H0535494A JP 3211514 A JP3211514 A JP 3211514A JP 21151491 A JP21151491 A JP 21151491A JP H0535494 A JPH0535494 A JP H0535494A
Authority
JP
Japan
Prior art keywords
optimization
optimizing
source program
variable
feasibility
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.)
Pending
Application number
JP3211514A
Other languages
English (en)
Inventor
Tomoyuki Yui
朋之 湯井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP3211514A priority Critical patent/JPH0535494A/ja
Publication of JPH0535494A publication Critical patent/JPH0535494A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 ソースプログラムを最適化してコンパイルす
る際に、不足する情報を利用者から得て実行効率のよい
オブジェクトプログラムを出力する。 【構成】 コンパイラ1が起動されると、ソースプログ
ラム6を入力してコンパイルを行う。最適化部2では、
最適化可否検査手段3がソースプログラム6中の変数の
最適化の可否を検査し、最適化可否情報取得手段4が変
数の最適化の可否を決定できない場合に入出力装置8を
介して利用者より対話型で最適化可否情報を取得し、最
適化手段5が変数の最適化が可であると決定された場合
および最適化可否情報が最適化が可である旨を示す場合
に変数の最適化を行う。この結果、コンパイラ1は、実
行効率のよいオブジェクトプログラム7を出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンパイラがプログラム
言語を最適化してコンパイルするコンパイル方式に関
し、特に高級プログラム言語の対話型最適化コンパイル
方式に関する。
【0002】
【従来の技術】従来、コンパイラは、高級プログラム言
語を最適化してコンパイルする際に、ソースプログラム
中の変数に対して最適化の可否を決定できない場合に
は、その変数に対して無条件で最適化を行わないように
していた。
【0003】
【発明が解決しようとする課題】上述した従来のコンパ
イル方式では、コンパイラがソースプログラム中の変数
に対して最適化の可否を決定できない場合にはその変数
に対して最適化が行われないようになっていたので、実
際は最適化が可能な場合でも最適化が行われないため
に、実行効率の悪いオブジェクトプログラムが出力され
てしまうという欠点がある。
【0004】本発明の目的は、上述の点に鑑み、コンパ
イラがソースプログラム中の変数に対して最適化の可否
を決定できない場合に利用者より対話型でその変数に対
する最適化可否情報を取得して実行効率のよいオブジェ
クトプログラムを出力できるようにした高級プログラム
言語の対話型最適化コンパイル方式を提供することにあ
る。
【0005】
【課題を解決するための手段】本発明の高級プログラム
言語の対話型最適化コンパイル方式は、高級プログラム
言語で記述されたソースプログラムをコンパイルしてオ
ブジェクトプログラムを出力するコンパイル方式におい
て、ソースプログラム中の変数の最適化の可否を検査す
る最適化可否検査手段と、この最適化可否検査手段によ
りソースプログラム中の変数の最適化の可否を決定でき
ない場合に利用者より最適化可否情報を取得する最適化
可否情報取得手段と、前記最適化可否検査手段によりソ
ースプログラム中の変数の最適化が可であると決定され
た場合および前記最適化可否情報取得手段により得られ
た最適化可否情報が最適化が可である旨を示す場合にソ
ースプログラム中の変数の最適化を行う最適化手段とを
有する。
【0006】
【作用】本発明の高級プログラム言語の対話型最適化コ
ンパイル方式では、最適化可否検査手段がソースプログ
ラム中の変数の最適化の可否を検査し、最適化可否情報
取得手段が最適化可否検査手段によりソースプログラム
中の変数の最適化の可否を決定できない場合に利用者よ
り最適化可否情報を取得し、最適化手段が最適化可否検
査手段によりソースプログラム中の変数の最適化が可で
あると決定された場合および最適化可否情報取得手段に
より得られた最適化可否情報が最適化が可である旨を示
す場合にソースプログラム中の変数の最適化を行う。
【0007】
【実施例】次に、本発明について図面を参照して詳細に
説明する。
【0008】図1は、本発明の一実施例に係る高級プロ
グラム言語の対話型最適化コンパイル方式の構成を示す
ブロック図である。本実施例の高級プログラム言語の対
話型最適化コンパイル方式は、最適化部2を含むコンパ
イラ1と、ソースプログラム6と、オブジェクトプログ
ラム7と、入出力装置8とから、その主要部が構成され
ている。
【0009】最適化部2は、最適化可否検査手段3と、
最適化可否情報取得手段4と、最適化手段5とを含んで
構成されている。
【0010】次に、このように構成された本実施例の高
級プログラム言語の対話型最適化コンパイル方式の動作
について説明する。
【0011】コンパイラ1が起動されると、ソースプロ
グラム6が入力され、コンパイル処理が開始され、最適
化部2が起動される。
【0012】最適化部2では、まず最適化可否検査手段
3が、ソースプログラム6中の変数に対して最適化の可
否を決定する。最適化可否検査手段3は、ソースプログ
ラム6中の変数に対して最適化ができると決定した場合
には、最適化手段5に制御を渡す。また、最適化可否検
査手段3は、ソースプログラム6中の変数に対して最適
化ができないと決定した場合には、最適化を行わないよ
うにする。さらに、最適化可否検査手段3は、ソースプ
ログラム6中の変数に対して最適化の可否を決定できな
かった場合には、最適化可否情報取得手段4に制御を渡
す。
【0013】最適化可否情報取得手段4は、最適化の可
否を決定できなかった変数に対する最適化可否情報を入
出力装置7に対して要求し、入出力装置7から利用者の
変数に対する最適化可否情報を得て、最適化可否情報が
最適化の可を示すか不可を示すかを判断する。最適化可
否情報が最適化の可を示す場合には、最適化可否情報取
得手段4は、最適化手段5に制御を渡す。最適化可否情
報が最適化の不可を示す場合には、最適化可否情報取得
手段4は、最適化を行わないようにする。
【0014】最適化手段5は、最適化可否検査手段3に
よりソースプログラム6中の変数の最適化が可であると
決定された場合および最適化可否情報取得手段4により
得られた最適化可否情報が最適化が可である旨を示す場
合に、ソースプログラム6中の変数の最適化を行う。
【0015】この結果、コンパイラ1は、ソースプログ
ラム6を実行効率が最適化されたオブジェクトプログラ
ム7に変換して出力する。
【0016】例えば、図2のC言語で記述されたソース
プログラムの一例に示すように、の代入文の変数pが
変数aのアドレスを保持しているかどうかはコンパイラ
1にはわからないため(変数pと変数aとは外部から引
数として渡される変数であるので)、の代入文をx=
1+1、すなわちx=2という代入文に最適化すること
はできない。もし、変数pが変数aのアドレスを保持し
ていると、x=a+1はx=2+1、すなわちx=3と
なる。そこで、の代入文の変数aに対して、「の代
入文で変数aの内容は変更されないので、変数aは最適
化が可である」という最適化可否情報を利用者から得る
ことにより、の代入文をx=2と最適化することがで
きる。
【0017】
【発明の効果】以上説明したように本発明は、コンパイ
ラの最適化部がソースプログラム中の変数に対して最適
化の可否を決定できない場合に利用者から対話型で最適
化可否情報を得て最適化を行うようにしたことにより、
ソースプログラムから最も最適な実行効率を有するオブ
ジェクトプログラムを作成することできるという効果が
ある。
【図面の簡単な説明】
【図1】本発明の一実施例に係る高級プログラム言語の
対話型最適化コンパイル方式の構成を示すブロック図で
ある。
【図2】本実施例の対話型最適化コンパイル方式が適用
されるC言語のソースプログラムの一例を示す図であ
る。
【符号の説明】
1 コンパイラ 2 最適化部 3 最適化可否検査手段 4 最適化可否情報取得手段 5 最適化手段 6 ソースプログラム 7 オブジェクトプログラム 8 入出力装置

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 高級プログラム言語で記述されたソース
    プログラムをコンパイルしてオブジェクトプログラムを
    出力するコンパイル方式において、 ソースプログラム中の変数の最適化の可否を検査する最
    適化可否検査手段と、 この最適化可否検査手段によりソースプログラム中の変
    数の最適化の可否を決定できない場合に利用者より最適
    化可否情報を取得する最適化可否情報取得手段と、 前記最適化可否検査手段によりソースプログラム中の変
    数の最適化が可であると決定された場合および前記最適
    化可否情報取得手段により得られた最適化可否情報が最
    適化が可である旨を示す場合にソースプログラム中の変
    数の最適化を行う最適化手段とを有することを特徴とす
    る高級プログラム言語の対話型最適化コンパイル方式。
JP3211514A 1991-07-29 1991-07-29 高級プログラム言語の対話型最適化コンパイル方式 Pending JPH0535494A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3211514A JPH0535494A (ja) 1991-07-29 1991-07-29 高級プログラム言語の対話型最適化コンパイル方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3211514A JPH0535494A (ja) 1991-07-29 1991-07-29 高級プログラム言語の対話型最適化コンパイル方式

Publications (1)

Publication Number Publication Date
JPH0535494A true JPH0535494A (ja) 1993-02-12

Family

ID=16607180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3211514A Pending JPH0535494A (ja) 1991-07-29 1991-07-29 高級プログラム言語の対話型最適化コンパイル方式

Country Status (1)

Country Link
JP (1) JPH0535494A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0721033A (ja) * 1993-07-07 1995-01-24 Nec Corp 言語処理装置及びその方法
US8017896B2 (en) 2008-07-29 2011-09-13 Murakami Corporation Vehicle accessory having a rear light receiving sensor for measuring illumination intensity inside the vehicle

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0721033A (ja) * 1993-07-07 1995-01-24 Nec Corp 言語処理装置及びその方法
US8017896B2 (en) 2008-07-29 2011-09-13 Murakami Corporation Vehicle accessory having a rear light receiving sensor for measuring illumination intensity inside the vehicle

Similar Documents

Publication Publication Date Title
US5606697A (en) Compiler system for language processing program
JPH05257709A (ja) 並列化判別方法およびそれを用いた並列化支援方法
JP2007141173A (ja) コンパイルシステム、デバッグシステムおよびプログラム開発システム
US20010039654A1 (en) Compiler processing system for generating assembly program codes for a computer comprising a plurality of arithmetic units
US7373641B2 (en) Method, computer unit and program for converting a program
US8037463B2 (en) Computer program functional partitioning system for heterogeneous multi-processing systems
US6751791B2 (en) Method of optimizing an MPI procedure by altering to a procedure other than the invoked MPI procedure portion or by altering the execution sequence
JPH0535494A (ja) 高級プログラム言語の対話型最適化コンパイル方式
JP3790707B2 (ja) プログラム変換方法、これを用いたコンピュータ装置及びプログラム
JPH08263299A (ja) プログラム変換方法
JP3327674B2 (ja) プログラム翻訳装置及び方法
JP2956591B2 (ja) ループ外への条件付き飛び出しがあるループの並列化方法及び装置
JP3034582B2 (ja) コンパイル処理方式
JP3956113B2 (ja) データ処理装置及びプログラム
KR0169908B1 (ko) 중간코드를 이용한 컴파일러의 후위처리기 및 그 후위처리기의 어셈블리 코드 생성방법
JPH06242958A (ja) コンパイル方式
JPH0126091B2 (ja)
JP2001034482A (ja) コンパイル装置、プログラム最適化装置、コンパイル処理方法及び記録媒体
JPH0659933A (ja) コード変換装置
JPH08194624A (ja) 実行形式プログラム作成方法
JPH10326193A (ja) インライン展開関数の最適化のためのコンパイル方法
JPH04264924A (ja) コンパイラ
JPH1083328A (ja) 単体テスト用疑似入出力実現方式
JPH0512033A (ja) 並列化コンパイル方式
JP2009515243A (ja) ホストコンピュータ上で実行可能なシミュレーションプログラムを生成する方法