JP2003208317A - プログラム開発方法 - Google Patents

プログラム開発方法

Info

Publication number
JP2003208317A
JP2003208317A JP2002004766A JP2002004766A JP2003208317A JP 2003208317 A JP2003208317 A JP 2003208317A JP 2002004766 A JP2002004766 A JP 2002004766A JP 2002004766 A JP2002004766 A JP 2002004766A JP 2003208317 A JP2003208317 A JP 2003208317A
Authority
JP
Japan
Prior art keywords
program
object program
assembly language
procedure
executable object
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.)
Withdrawn
Application number
JP2002004766A
Other languages
English (en)
Inventor
Masaki Arai
正樹 新井
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002004766A priority Critical patent/JP2003208317A/ja
Publication of JP2003208317A publication Critical patent/JP2003208317A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 【課題】 プログラム開発者に負担をかけることなく、
ファイル間最適化又は実行時情報を利用した最適化が可
能なプログラム開発方法を提供する。 【解決手段】 ソースファイルA.c …をコンパイルする
ことにより中間表現をアセンブリ言語プログラムA.s …
に変換する手順、前記アセンブリ言語プログラムに、前
記中間表現infoを付加する手順、前記アセンブリ言語プ
ログラムをアセンブルすることにより、中間表現を含む
オブジェクトプログラムA.o …を作成する手順、リンケ
ージエディタ5により、前記オブジェクトプログラムに
ライブラリ6をリンクさせて、実行可能オブジェクトプ
ログラムA.out を作成する手順によりプログラム開発方
法を構成する。コンパイラ1の中間表現を付加情報とし
て、最適化、実行情報の取得を行うことにより、環境に
最適な実行可能オブジェクトプログラムを得ることがで
きる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、C、C++、Fortra
n などのプログラム言語のような、コンパイラを使用す
るプログラム開発方法に関するものである。
【0002】
【従来の技術】図1を用いて、従来のプログラムの開発
方法を説明する。C、C++、Fortran などのプログラム
言語は、コンパイラを使用して、以下の手順で作成され
る。 1.一般に、大きいプログラムの場合は、ソースプログ
ラムは複数の小さなソースプログラムA.c, B.c,……に
分割される。 2.個々のソースプログラムA.c, B.c,……が、コンパ
イラ1により、アセンブリ言語プログラムA.s, B.s,…
…に変換される。 3.個々のアセンブリ言語プログラムA.s, B.s,……
が、アセンブラ4により、オブジェクトプログラムA.o,
B.o,……に変換される。 4.複数のオブジェクトプログラムA.o, B.o,……とラ
イブラリ6が、リンケージエディタ5により、結合され
て実行可能オブジェクトプログラムA.outが作成され
る。
【0003】コンパイラ1は、最適化処理を含む。この
最適化技術の一つとして、ファイル間最適化がある。こ
れは複数のソースプログラムA.c, B.c, ……の中の情報
を一度に参照して、各ソースプログラムA.c, B.c, ……
の最適化を行う。一般に、このファイル間最適化を行う
ためには、コンパイラ1に対して、最適化を行うファイ
ル群を指定する必要がある。
【0004】また、コンパイラ1の最適化技術の一つ
に、実行時の情報を利用した最適化がある。これは、ま
ず、実行時情報を取得するための実行可能オブジェクト
プログラムA.out を作成し、その実行可能オブジェクト
プログラムA.out をコンピュータ上で実行して、各種の
情報を採取する。この採取した情報をコンパイラ1への
追加の入力として、実行可能オブジェクトプログラムA.
out を作成しなおす。このように、より良い実行可能オ
ブジェクトプログラムA.out を作成するための方法が、
実行時の情報を利用した最適化である。
【0005】
【発明が解決しようとする課題】しかしながら、上記の
ファイル間最適化あるいは、実行時の情報を利用した最
適化は、実際のプログラム開発者にはほとんど利用され
ていない。この主な理由としては、これらの最適化を利
用するプログラム開発者に手間がかかることがある。フ
ァイル間最適化を利用する場合、プログラム開発者がプ
ログラムをコンパイルする方法をコンパイラに詳細に指
示すること、あるいはプログラムを何度もコンパイルす
ることは、プログラム開発を煩雑にする。例えば、1回
のコンパイルで複数のソースプログラムを最適化すると
き、どのプログラムを対象にするかを指定しなければな
らない。また、いっぺんに複数のファイルをコンパイラ
に渡すときは、プログラムが何個になるかなどと、それ
なりの指令を書かなければいけない。更に、ソースプロ
グラムを配布するような場合、プログラム開発者と実行
可能オブジェクトプログラムの作成者は同一でないの
で、コンパイラへの指示が困難な場合がある。
【0006】実行時情報を利用した最適化については、
実行時の情報(例、ある関数が何回実行されたかという
情報)を取るため、一回、実行可能オブジェクトプログ
ラムを作成し、−profile というオプションをつけなけ
ればいけない。そして、できた実行可能オブジェクトプ
ログラムをいろいろな入力に対して実行させて情報を取
る。これにより更にコンパイルをする必要がある。この
ように、コンパイルを最低二回やらなければならない。
【0007】また、実行時情報を取得できない場合もあ
る。実行時情報は、実行可能オブジェクトプログラムを
実際に実行する環境で取得するべきである。しかしなが
ら、一般に実行可能オブジェクトプログラムは未だ完成
していないコンピュータシステムでも利用される場合が
あり、そのような場合には実行時情報を取得できない。
例えば、オペレーティングシステムは、そのリリース後
にハードウェアが進歩しても、オブジェクトプログラム
は変更されないという実行可能オブジェクトプログラム
である。
【0008】本発明は、プログラム開発者に負担をかけ
ることなく、ファイル間最適化又は実行時情報を利用し
た最適化が可能なプログラム開発方法を提供することを
目的とするものである。
【0009】
【課題を解決するための手段】本発明は、上記目的を達
成するためになされたものである。本発明においては、
コンパイラ、アセンブラ、あるいはリンケージエディタ
を以下のように変更する。 (1)コンパイラは、アセンブリ言語プログラムだけで
なく、コンパイラの中間表現を付加情報として出力する
ように変更される。 (2)アセンブラは、アセンブリ言語プログラムをオブ
ジェクトコードに変換するだけでなく、コンパイラの中
間表現を付加情報として出力するように変更される。 (3)リンケージエディタは、入力となるオブジェクト
プログラムとライブラリをリンクするだけでなく、各オ
ブジェクトプログラムとライブラリが保持する付加情報
の集合もリンクし、結果の実行形式プログラムあるいは
ライブラリ中にリンクした付加情報を保持するように変
更される。
【0010】本発明によれば、既存のプログラム開発ツ
ールの使用方法は殆ど何も変更することなく、ファイル
間最適化又は実行時情報を利用した最適化を、プログラ
ム開発者あるいは開発されたプログラムの使用者が負担
なく利用することができるようになる。
【0011】
【発明の実施の形態】以下、本発明の実施形態について
図を用いて説明する。図2は、本発明を適用したC、C
++、Fortran などのプログラム言語におけるプログラム
開発方法を示す。ソースプログラムは複数の小さなソー
スプログラムA.c, B.c……に分割されている。図では、
1個のソースプログラムA.c の処理を主として示してい
る。
【0012】個々のソースプログラムA.c, B.c……が、
コンパイラ1により、アセンブリ言語プログラムA.s,
B.sに変換される。コンパイラ1においては、最終的
に、変換部2により中間表現3が変換され、アセンブリ
言語プログラムA.s, B.s……が作成される。コンパイラ
1は、主に最適化用又はデバック用の情報を中間表現3
で持っている。コンパイラ1は、アセンブリ言語プログ
ラムA.s, B.s……だけでなく、中間表現3を付加情報in
foとして出力する。
【0013】アセンブリ言語プログラムA.s, B.s……
は、アセンブラ4によりオブジェクトプログラムA.o,
B.o……に変換される。アセンブラ4は、オブジェクト
プログラムA.o, B.o……にコンパイラ1の中間表現3を
付加情報infoとして出力する。複数のオブジェクトプロ
グラムA.o, B.o……とライブラリ6が、リンケージエデ
ィタ5により、リンクされて実行可能オブジェクトプロ
グラムA.out が作成される。リンケージエディタ5は、
各オブジェクトプログラムA.o, B.o……及びライブラリ
6が有する付加情報infoの集合もリンクし、実行可能オ
ブジェクトプログラムA.out 中に保持する。
【0014】なお、リンケージエディタ5によるリンク
の際、付加情報infoを持たない実行可能オブジェクトプ
ログラムA.outあるいはライブラリ6が含まれることが
ある。この場合に対しては、以下のいずれかの措置をす
る。 (1)付加情報infoを持たない部分は解析不能として、
何もしない。後で実行するファイル間最適化などでは、
この範囲に関しては最悪の場合の仮定(例えば、すべて
の変数の値が変化するという仮定)をする。 (2)手続き名などの最低限の情報だけ抽出し、後で実
行するファイル間最適化のための枠組みを作成する。実
行情報をフィードバックする場所として活用することも
可能である。あるいは、オブジェクトプログラムA.o,
B.o……を解析して、可能な限りほかの手続きと同じレ
ベルの情報を抽出する。
【0015】作成した実行可能オブジェクトプログラム
A.outは、通常の操作(% A.out)により実行できる
が、付加情報infoを有効に利用するために、実行環境
(ENV)が利用される。図3は、実行環境の構成を示
す。実行環境7は、マネジャ的なプログラムであり、フ
ァイル間最適化コンパイラに相当する最適化の適用、実
行可能ファイルの状況の管理と自動的に実行するべき作
業の実施、計算機環境の変化の認識とその情報の実行可
能ファイルへの反映を行う。実行環境7は、CPU上で
実行可能オブジェクトプログラムA.out を実行させ、ど
のCPUで動作しているかを自動的に判別し、よりよい
パフォーマンスをさせる。
【0016】実行環境7においては、例えば、次の操作
が利用できる。 (A) % ENV -execute A.out (B) % ENV -optimize A.out (C) % ENV -profile A.out (A)の操作により、実行可能オブジェクトプログラム
A.out がCPU8上で実行される。
【0017】(B)の操作により、付加情報infoから
(もし存在すれば過去の実行時情報を参照して)実行可
能オブジェクトプログラムA.outを最適化して、新しい
実行可能オブジェクトプログラムA.out'が作成される。
この新しい実行可能オブジェクトプログラムA.out'は、
元の実行可能オブジェクトプログラムA.out 及び付加情
報infoに付加される。 (C)の操作により、CPU8から実行時情報profが収
集され、実行可能オブジェクトプログラムA.out に付加
され、付加情報infoにフィードバックされる。
【0018】また、新しい実行可能オブジェクトプログ
ラムA.out'から更に新しい実行可能オブジェクトプログ
ラムA.out'' を作成することができる。実行環境7によ
る新たな実行可能オブジェクトプログラムA.out'の作成
は、例えば、(ア)ユーザによる明示的な指示で行う、
(イ)環境の変化を自動認識した場合に行う、(ウ)実
行時に行う、というような選択肢を用意することができ
る。
【0019】実行環境7を使用することにより、例えば
以下の利点が得られる。 (ア)リンクした付加情報infoの集合に基づいて、ファ
イル間最適化を適用したより良い実行可能ファイルA.ou
t'を作成できる。一般のコンパイラでは、コンパイラオ
プションの追加、又はコマンドの起動方法の変更でMake
fileを書き換えるなどのプログラム作成手順を変更しな
ければ、ファイル間最適化を適用できない。これに対し
て、本例によれば、手順を変更することなく、ファイル
間最適化を適用できる。
【0020】(イ)従来のプログラム作成方法では、実
行時情報の取得とその利用に多数のステップが必要であ
るけれども、本例では、実行環境7に対する指示のみで
済む。プロファイル情報の利用時に多数の一時ファイル
を作成する必要もない。 (ウ)最終的な実行可能オブジェクトプログラムの生成
を遅らせることができるため、システム環境の変更に柔
軟に対応できる。
【0021】以上説明した実施形態の効果について、従
来方法と比較しながら説明する。例として、コンパイラ
1でソースプログラムA.c,B.c……から作成される実行
可能オブジェクトプログラムA.outを開発し、実行する
ことを考える。従来方式では、ソースプログラムA.c,
B.c……をそれぞれオブジェクトプログラムA.o, B.o…
…にコンパイルする。リンケージエディタ5が、オブジ
ェクトプログラムA.o, B.o……をリンクして実行可能オ
ブジェクトプログラムA.outを作成する。
【0022】実行可能オブジェクトプログラムA.outに
対してファイル間最適化を適用したければ、一般にはコ
ンパイラ1にソースプログラムA.c, B.c……を一度に渡
してコンパイルする必要がある。また、実行可能オブジ
ェクトプログラムA.outに対して実行時情報の最適化を
適用するためには、まず、ソースプログラムA.c, B.c…
…をそれぞれ実行時情報を取得するためにコンパイル
し、リンケージエディタ5がそれらをリンクし、テスト
用プログラムA.out-testを作成する。A.out-testを実行
することで、実行時情報A.out-test.data が取得できる
(一般には実行時情報は一つのファイルではなく複数の
ファイルからなる)。A.out-test.data を追加情報とし
て、A.c, B.c, C.c ……を再びコンパイルして、最終的
な実行可能オブジェクトプログラムA.out を作成する。
【0023】一般には、この実行可能オブジェクトプロ
グラムA.outは、A.out-test を実行した状況と同様の状
況で実行する場合は、効率よく実行できる。しかしなが
ら、異なる状況では必ずしも効率よく実行することはで
きず、性能が低下する可能性もある。本実施形態の場
合、リンケージエディタ5が、オブジェクトプログラム
A.o, B.o……をリンクして、実行可能オブジェクトプロ
グラムA.outを作成する。このとき、オブジェクトプロ
グラムA.o, B.o……は付加情報infoも持ち、結果のA.ou
t は、上記従来方法におけるA.out の情報だけでなく、
各オブジェクトプログラムの付加情報infoを結合した情
報も持つ。
【0024】本実施形態のA.outは、従来のA.outと同等
の情報を持つので、そのまま実行することができる。さ
らに、A.outが含む付加情報infoから、ファイル間最適
化を適用した新しい実行形式A.out'を作成して、A.out
に付加して保存することができる。これは、実行環境7
にA.outを渡すことで実行できる。従来方法では、ファ
イル間最適化を行うためにコンパイラの利用方法を変更
する必要があったけれども、本実施形態では、ファイル
間最適化を行う場合と行わない場合で、実行可能オブジ
ェクトプログラムA.outを作成する手順を変更する必要
がない。また、実行時情報を利用した最適化を適用する
ためには、実行環境7に実行可能オブジェクトプログラ
ムA.outを渡して実行することで、実行可能オブジェク
トプログラムA.out 内に実行時情報を現在の実行可能形
式と対にして保存できる。
【0025】本実施形態においては、オブジェクトプロ
グラムA.o, B.o……及び実行可能オブジェクトファイル
A.out は、従来方式と比較してファイルのサイズが大き
くなるけれども、付加情報infoを適宜削除することによ
り、従来方法のオブジェクトプログラムA.o, B.o及び実
行可能オブジェクトプログラムA.out に変換できる。ま
た、例えば、あるオブジェクトプログラムC.o が付加情
報infoを含まないものであっても、付加情報infoを含む
オブジェクトプログラムと付加情報を含まないオブジェ
クトプログラムとを結合した後に実行可能オブジェクト
ファイルを生成することにより、欠損した情報を補完す
ることができる。
【0026】(付記1)ソースプログラムをコンパイル
することによりアセンブリ言語プログラムを作成する手
順、前記アセンブリ言語プログラムに、前記中間表現を
付加する手順、を具備することを特徴とするプログラム
開発方法。(1) (付記2)ソースプログラムをコンパイルすることによ
りアセンブリ言語プログラムを作成する手順、前記アセ
ンブリ言語プログラムに、前記中間表現を付加する手
順、前記アセンブリ言語プログラムをアセンブルするこ
とにより、中間表現を含むオブジェクトプログラムを作
成する手順、を具備することを特徴とするプログラム開
発方法。 (付記3)ソースファイルをコンパイルすることにより
中間表現をアセンブリ言語プログラムに変換する手順、
前記アセンブリ言語プログラムに、前記中間表現を付加
する手順、前記アセンブリ言語プログラムをアセンブル
することにより、中間表現を含むオブジェクトプログラ
ムを作成する手順、リンケージエディタにより、前記オ
ブジェクトプログラムにライブラリをリンクさせて、中
間表現を含む実行可能オブジェクトプログラムを作成す
る手順、を具備することを特徴とするプログラム開発方
法。(2) (付記4)前記ソースプログラム、前記アセンブリ言語
プログラム、前記オブジェクトプログラムがそれぞれ複
数ある3に記載のプログラム開発方法。 (付記5)前記中間表現を付加した実行可能オブジェク
トプログラムを実行環境により最適化することにより、
新しい実行可能オブジェクトプログラムを作成して、元
の実行可能オブジェクトプログラムに追加する手順、を
具備する3又は4に記載のプログラム開発方法。(3) (付記6)開発した前記実行可能オブジェクトプログラ
ムをコンピュータ上で実行する手順、この実行時に得た
実行時情報を、前記実行可能オブジェクトプログラムに
追加する手順、を具備する3〜5のいずれか1項に記載
のプログラム開発方法。(4) (付記7)前記リンケージエディタは、前記中間表現を
付加したオブジェクトプログラムに、中間表現を付加し
ていないオブジェクトプログラムを結合して、前記実行
可能オブジェクトプログラムを作成する3〜6のいずれ
か1項に記載のプログラム開発方法。 (付記8)前記付加情報を削除する手順を具備する1〜
8のいずれか1項に記載のプログラム開発方法。 (付記9)コンピュータに、ソースプログラムをコンパ
イルすることによりアセンブリ言語プログラムを作成す
る手順、前記アセンブリ言語プログラムに、前記中間表
現を付加する手順、を実行させるプログラム。 (付記10)コンピュータに、ソースプログラムをコン
パイルすることによりアセンブリ言語プログラムを作成
する手順、前記アセンブリ言語プログラムに、前記中間
表現を付加する手順、前記アセンブリ言語プログラムを
アセンブルすることにより、中間表現を含むオブジェク
トプログラムを作成する手順、を実行させるプログラ
ム。 (付記11)コンピュータに、ソースファイルをコンパ
イルすることにより中間表現をアセンブリ言語プログラ
ムに変換する手順、前記アセンブリ言語プログラムに、
前記中間表現を付加する手順、前記アセンブリ言語プロ
グラムをアセンブルすることにより、前記中間表現を含
むオブジェクトプログラムを作成する手順、前記オブジ
ェクトプログラムをアセンブラにより実行可能オブジェ
クトプログラムに変換する手順、リンケージエディタに
より、前記オブジェクトプログラムにライブラリをリン
クさせて、中間表現を含む実行可能オブジェクトプログ
ラムを作成する手順、を実行させるプログラム。(5)
【0027】
【発明の効果】本発明によって、既存のデバッガ又はma
keなどのプログラムツールの利用方法は変更することな
く、また、プログラム開発者に負担をかけることなく、
ファイル間最適化又は実行時の情報を利用した最適化が
可能なプログラム開発を得ることができる。
【図面の簡単な説明】
【図1】従来のプログラム作成方法を示す図である。
【図2】本発明を適用したプログラム作成方法を示す図
である。
【図3】本発明における実行環境の構成を示す図であ
る。
【符号の説明】
1…コンパイラ 2…変換部 3…中間表現 4…アセンブラ 5…リンケージエディタ 6…ライブラリ 7…実行環境 8…CPU A.c, B.c…ソースプログラム A.s, B.s…アセンブリ言語プログラム A.o, B.o…オブジェクトプログラム A.out …実行可能オブジェクトプログラム info…付加情報 prof…実行時情報

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 ソースプログラムをコンパイルすること
    によりアセンブリ言語プログラムを作成する手順、 前記アセンブリ言語プログラムに、前記中間表現を付加
    する手順、 を具備することを特徴とするプログラム開発方法。
  2. 【請求項2】 ソースファイルをコンパイルすることに
    より中間表現をアセンブリ言語プログラムに変換する手
    順、 前記アセンブリ言語プログラムに、前記中間表現を付加
    する手順、 前記アセンブリ言語プログラムをアセンブルすることに
    より、中間表現を含むオブジェクトプログラムを作成す
    る手順、 リンケージエディタにより、前記オブジェクトプログラ
    ムにライブラリをリンクさせて、中間表現を含む実行可
    能オブジェクトプログラムを作成する手順、 を具備することを特徴とするプログラム開発方法。
  3. 【請求項3】 前記中間表現を付加した実行可能オブジ
    ェクトプログラムを実行環境により最適化することによ
    り、新しい実行可能オブジェクトプログラムを作成し
    て、元の実行可能オブジェクトプログラムに追加する手
    順、 を具備する請求項2に記載のプログラム開発方法。
  4. 【請求項4】 開発した前記実行可能オブジェクトプロ
    グラムをコンピュータ上で実行する手順、 この実行時に得た実行時情報を、前記実行可能オブジェ
    クトプログラムに追加する手順、 を具備する請求項2又は3に記載のプログラム開発方
    法。
  5. 【請求項5】 コンピュータに、 ソースファイルをコンパイルすることにより中間表現を
    アセンブリ言語プログラムに変換する手順、 前記アセンブリ言語プログラムに、前記中間表現を付加
    する手順、 前記アセンブリ言語プログラムをアセンブルすることに
    より、前記中間表現を含むオブジェクトプログラムを作
    成する手順、 前記オブジェクトプログラムをアセンブラにより、中間
    表現を含む実行可能オブジェクトプログラムに変換する
    手順、 リンケージエディタにより、前記オブジェクトプログラ
    ムにライブラリをリンクさせて、実行可能オブジェクト
    プログラムを作成する手順、 を実行させるプログラム。
JP2002004766A 2002-01-11 2002-01-11 プログラム開発方法 Withdrawn JP2003208317A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002004766A JP2003208317A (ja) 2002-01-11 2002-01-11 プログラム開発方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002004766A JP2003208317A (ja) 2002-01-11 2002-01-11 プログラム開発方法

Publications (1)

Publication Number Publication Date
JP2003208317A true JP2003208317A (ja) 2003-07-25

Family

ID=27644003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002004766A Withdrawn JP2003208317A (ja) 2002-01-11 2002-01-11 プログラム開発方法

Country Status (1)

Country Link
JP (1) JP2003208317A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10481883B2 (en) 2016-08-22 2019-11-19 Fujitsu Limited Inter-file optimization program generation method, and program generator

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10481883B2 (en) 2016-08-22 2019-11-19 Fujitsu Limited Inter-file optimization program generation method, and program generator

Similar Documents

Publication Publication Date Title
JP3041222B2 (ja) ソース・コード作成システム及び方法
Consel et al. A uniform approach for compile-time and run-time specialization
JP3190773B2 (ja) 言語処理プログラムのコンパイル処理方法
US7971201B2 (en) Multiple operating device version software generating system and multiple operating device version software generation support program and method
US6233733B1 (en) Method for generating a Java bytecode data flow graph
US6874140B1 (en) Debug annotations
JPH08202545A (ja) ターゲット言語コードを生成するためのオブジェクト指向システム及びその方法
US20110093837A1 (en) Method and apparatus for enabling parallel processing during execution of a cobol source program using two-stage compilation
US20080250231A1 (en) Program code conversion apparatus, program code conversion method and recording medium
US20110126179A1 (en) Method and System for Dynamic Patching Software Using Source Code
JP2008276735A (ja) プログラムコード変換装置及びプログラムコード変換方法
Sathyanathan et al. Incremental whole program optimization and compilation
US20170206068A1 (en) Program optimization based on directives for intermediate code
Ferrer et al. Mercurium: Design decisions for a s2s compiler
JP2003208317A (ja) プログラム開発方法
JP2007226589A (ja) プログラム変換システム
KR20090004210A (ko) 통합 개발 환경을 이용한 소프트웨어 프로그램을 개발하기위한 장치 및 통합 개발 환경을 이용한 소프트웨어프로그램 개발 시스템
Lumley et al. Compiling XSLT3, in the browser, in itself
CN113900706A (zh) 接口文档的生成方法及装置
GB2420638A (en) Method of substituting code fragments in Internal Representation
Abate et al. Bootstrapping software distributions
JPH09218789A (ja) 分割コンパイル方式
Tan et al. Design and implementation of an automatic RTPA code generator
Gyimesi et al. Enforcing Techniques and Transformation of C/C++ Source Code to Heterogeneous Hardware
Hadas et al. Toward practical language oriented modularity

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050405