JP3278584B2 - コンピュータプログラム生成装置及び方法 - Google Patents

コンピュータプログラム生成装置及び方法

Info

Publication number
JP3278584B2
JP3278584B2 JP33935996A JP33935996A JP3278584B2 JP 3278584 B2 JP3278584 B2 JP 3278584B2 JP 33935996 A JP33935996 A JP 33935996A JP 33935996 A JP33935996 A JP 33935996A JP 3278584 B2 JP3278584 B2 JP 3278584B2
Authority
JP
Japan
Prior art keywords
program
information
routine
parameter
routines
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
Application number
JP33935996A
Other languages
English (en)
Other versions
JPH10187458A (ja
Inventor
雅彦 百瀬
Original Assignee
エヌイーシーソフト株式会社
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 エヌイーシーソフト株式会社 filed Critical エヌイーシーソフト株式会社
Priority to JP33935996A priority Critical patent/JP3278584B2/ja
Publication of JPH10187458A publication Critical patent/JPH10187458A/ja
Application granted granted Critical
Publication of JP3278584B2 publication Critical patent/JP3278584B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータプロ
グラムの目的プログラム作成手段に関し、特に、実際に
実行されないプログラム部分を自動的に削除して、プロ
グラムの小型化、及び、それにより、処理速度の向上し
たプログラムを自動的に生成するコンピュータプログラ
ム生成装置及び方法に関する。
【0002】
【従来の技術】従来、コンピュータプログラムの目的プ
ログラムを作成する場合、コンパイラによって、原始プ
ログラムから目的モジュールを生成し、リンカによっ
て、目的モジュールをリンクして目的プログラムを生成
していた。
【0003】コンパイラは、原始プログラムを入力して
原始プログラムに含まれる情報をリンクの単位である目
的モジュールに変換し、リンカは目的モジュール内に含
まれる全てのルーチンを結合して目的プログラムを生成
していた。もしくは、コンパイラにてルーチンの定義・
参照情報を作成して目的モジュールに格納し、リンカに
て未参照のルーチンを削除して目的プログラムを作成し
ていた。
【0004】このような、従来例としては、特開平2−
62625号公報に開示された「プログラム構成管理装
置」や、特開平5−80991号公報に開示された「コ
ンピュータプログラム製造装置」等がある。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
技術には、以下に示すような問題点があった。
【0006】第1の問題点は、従来の技術においては、
ルーチンだけを削除するため、削除したルーチンだけが
使用しているデータ領域や、定形パラメータでインタフ
ェースしているルーチンで使用しているパラメータ以外
のパラメータに依存する、実行する可能性のないサブル
ーチンやデータ領域が、目的プログラムに結合されてし
まい、プログラムの肥大化を招くという点である。
【0007】その理由は、削除単位がルーチン単位のみ
であるため、ルーチン単位以外の削除が考慮されていな
いからである。
【0008】第2の問題点は、ルーチンのみを削除対象
としているため、ルーチンを呼ぶ判断処理等は、そのま
ま目的プログラムに結合されてしまい、実際に処理する
時間が短縮できるのにその努力を怠っている為、全体処
理高速化の可能性を放棄している点である。
【0009】その理由は、削除対象をルーチンに限定し
ているため、その呼出し処理自体の削除ができなくなっ
ているからである。
【0010】[発明の目的]本発明の目的は、プログラ
ムが動作するために必要なデータと、呼出し判断、ルー
チン内で有効なパラメータが動作するのに必要な処理だ
けを抜き出してプログラム作成処理を行うことによっ
て、その生成物である目的プログラムの小型化を図り、
かつ、高速化にも貢献することにある。
【0011】
【課題を解決するための手段】上述した課題を解決する
ための手段として、本発明のコンピュータプログラム生
成装置は、コンパイル時にコンパイラで得られた少なく
とも呼出し元パラメータ情報に基づいて実際に使用しな
いパラメータに関する処理を削除するリンカを有するコ
ンピュータプログラム生成装置であって、前記リンカ
は、入力した原始プログラムのルーチンを解析して生成
した呼出し先パラメータ情報と前記呼出し元パラメータ
情報とに基づいて削除する前記パラメータに関する処理
を決定することを特徴とする。また、本発明は、コンパ
イル時にコンパイラで得られた少なくとも呼出し元パラ
メータ情報に基づいて実際に使用しないパラメータに関
する処理を削除するコンピュータプログラム生成方法で
あって、入力した原始プログラムのルーチンを解析して
生成した呼出し先パラメータ情報と前記呼出し元パラメ
ータ情報とに基づいて削除する前記パラメータに関する
処理を決定することを特徴とする。
【0012】すなわち、本発明は、自/他モジュールの
区別無しに呼び出すルーチン毎に使用するパラメータと
パラメータの属性(固定値・可変値等)を目的モジュー
ル内に格納する機能と、一つの目的モジュールを構成す
る各ルーチンで使用する情報(有効なパラメータ値、パ
ラメータ毎に使用するデータ領域や発行するサブルーチ
ン等)を目的モジュール内に格納する機能と、を併せ持
つコンパイラと、上記コンパイラで生成した情報と、目
的モジュール内のデータ領域、プログラム領域を使用
し、不要なデータ領域やルーチン、パラメータのチェッ
ク処理、未使用パラメータが使用している固有処理を削
除する機能を持つリンカと、を含むことを特徴とするコ
ンピュータプログラム生成装置でもある。
【0013】[作用]本発明によれば、コンパイラは、
原始プログラムを入力し、ルーチンを解析して、呼出し
元情報、呼出し先情報、データ領域情報、プログラム領
域情報を生成し、各情報を目的モジュール内の呼出し元
情報テーブル、呼出し先情報テーブル、データ領域、プ
ログラム領域に格納し、目的モジュールを作成する。
【0014】また、リンカは、メインルーチンの呼出し
元情報からツリーを作成し、同時にルーチン一覧表を作
成し、全ツリーが作成されたときのルーチン一覧表を元
に各目的モジュールのデータ領域、プログラム領域から
使用しているデータ及びルーチンのみを取り出し、未使
用パラメータに関する処理を削除後、それらを結合して
目的プログラムを生成する。
【0015】これにより、従来、原始プログラムに含ま
れている余分なデータ、ルーチン、未使用パラメータ固
有処理が存在している場合、それを除いて目的プログラ
ムが作成できないでいた問題点を解決することができ
る。
【0016】本発明によれば、プログラムが動作するた
めに必要なデータと呼出し判断、ルーチン内で有効なパ
ラメータが動作するのに必要な処理だけを抜き出してプ
ログラム作成処理を行うため、その生成物である目的プ
ログラムの小型化が計られ、かつ、高速化にも貢献する
作用効果が得られる。
【0017】従来のコンパイラ/リンカでは、各インタ
フェース毎にユニット化されたモジュールを結合して、
目的プログラムを作成している。また、各種高水準言語
では、1つのインタフェースに複数のパラメータが設定
可能な場合が多い。このため、目的プログラム内に実際
の動作では一回も動かないルーチンやそのルーチンでし
か使用しないデータ領域等ができ、プログラムの肥大化
をまねいたり、必要の無いパラメータチェック分だけ性
能低下を起こしている。
【0018】そこで、本発明では、コンパイラに、コン
パイル結果である目的モジュール内に、呼び出し元情報
として、使用するインタフェース名、パラメータ名、パ
ラメータが固定値/可変値か等が、呼び出し先情報とし
て各パラメータ毎の使用データ情報、使用インタフェー
ス情報、使用ルーチン情報等を出力させる。リンカはこ
れらの情報を基に、不要なデータ領域や不要なルーチン
を削除し、目的プログラムを作成する。これにより、無
駄な資源の減少と処理の高速化を目指すことができる。
【0019】
【発明の実施の形態】以下、本発明の一実施形態につい
て図面を参照して説明する。
【0020】[構成の説明]図1は、本発明の一実施形
態のブロック構成図である。図に示されるように、この
実施形態は、一つ以上のルーチンから構成されている原
始プログラム1と、不要な定数パラメータ処理ルーチン
削除機能付きコンパイラ2(以下コンパイラ2と呼ぶ)
と、コンパイラにより生成される目的モジュール3と、
不要な定数パラメータ処理ルーチン削除機能付きリンカ
4(以下リンカ4と呼ぶ)と、リンクされた目的プログ
ラム5と、から構成されている。
【0021】コンパイラ2は、原始プログラム1から各
ルーチンを解析して呼出し元パラメータ情報211を生
成する呼出し元パラメータ情報生成機能21、呼出し先
パラメータ情報221を生成する呼出し先パラメータ情
報生成機能22、データ領域情報231を生成するデー
タ領域情報生成機能23、プログラム領域情報241を
生成するプログラム領域情報生成機能24と、各情報を
目的モジュール3内の呼出し元情報テーブル31、呼出
し先情報テーブル32、データ領域33、プログラム領
域34に格納し、目的モジュール3を作成する目的モジ
ュール生成機能25を含んで構成される。
【0022】また、目的モジュール3は、呼出し元情報
テーブル31、呼出し先情報テーブル32、データ領域
33、プログラム領域34を含んで構成される。
【0023】また、リンカ4は、同じように作成された
他の目的モジュールから、目的プログラム生成後にメイ
ンルーチンとなるルーチンを探査するメインルーチン解
析機能41、そのメインルーチンの呼出し元情報をもと
に、各目的モジュールの呼出し元情報テーブル31、呼
出し先情報テーブル32内の情報を解析して、ルーチン
名をキーとするツリー構造の情報であるツリー情報42
1を作成するツリー生成機能42と、ツリー生成機能4
2からのルーチン名などのルーチン情報をもとにルーチ
ン一覧431を生成するルーチン一覧生成機能43と、
ツリー生成機能42にてツリー情報421にプログラム
の全ツリーが作成され、ルーチン一覧生成機能43にて
ルーチン一覧431に使用する全ルーチンの情報が蓄積
された時のルーチン一覧表431を元に各目的モジュー
ルのデータ領域33、プログラム領域34から使用して
いるデータ及びルーチンを取り出し未使用パラメータに
関する固有処理を削除後、それらを結合し目的プログラ
ム5を生成する目的プログラム生成機能44を含んで構
成される。
【0024】目的プログラム5は、本発明の手段によ
り、不要な処理、データ等が、削除された実行可能なプ
ログラムである。
【0025】[動作の説明]次に、この実施形態が、C
言語の場合どのように動作するかを、図2,図3の動作
フローチャートを参照して説明する。
【0026】例として、C言語で記述された、一つの外
部参照可能なルーチンAmain()を持ち、そのAm
ain()から原始プログラム内サブルーチンBsub
()とCsub()を、原始プログラム外サブルーチン
Dsub()とEsub()を呼び出している原始プロ
グラム1があり、メインルーチンから、Amain()
の第一引数は“A”の固定値、第二引数は“0”、
“1”、“2”の何れかの値である限定値、第三引数は
“0x0000”〜“0xffff”の可変値で呼ば
れ、Amain()の第二引数が“0”の場合のみBs
ub()を呼出し、同じく“2”の場合のみDsu
b()を呼出し、Csub(),Esub()関数は引
き数に関係なく必ず呼ばれている場合について、説明す
る。
【0027】原始プログラム1をコンパイラ2に入力す
ると、コンパイラ2では、図2に示すような処理が行な
われる。
【0028】まず、呼出し元パラメータ情報生成機能2
1では、各ルーチンを解析し、他のルーチンを呼出して
いる条件や、その時の各引数の属性、値等を呼出し元パ
ラメータ情報211に格納する(ステップS21)。例
えば、Bsub()の場合、呼出し元情報として、Am
ain()の第二引数が“0”の場合呼ばれ、その時の
Bsub()に渡される引数は第一引数“1”の固定値
で、第二引数“0”〜“0xffff”の可変値で関数
を発行すると呼出し元パラメータ情報211に格納す
る。
【0029】以上の処理を、内部で使用している全関数
の解析が終了するまで繰り返す(ステップS22)。
【0030】次に、呼出し先パラメータ情報生成機能2
2では、原始プログラム1を構成しているAmai
n(),Bsub(),Csub()のルーチン毎、パ
ラメータ毎の情報を呼出し先パラメータ情報221に格
納する(ステップS23)。例えば、Amain()の
場合、第二引数が“0”の場合の使用データ領域、使用
呼出しサブルーチン及び、そのサブルーチン発行時の引
数等を呼出し先パラメータ情報221に格納する。同様
に第二引数が“1”,“2”の場合の上記情報を作成し
呼出し先パラメータ情報221に格納する。
【0031】以上の処理を、内部で定義している全関数
の解析が終了するまで繰り返す(ステップS24)。
【0032】次に、データ領域生成機能23では、ルー
チン内で使用するパラメータ毎にデータ情報を構築し、
データ領域情報231に格納する(ステップS25)。
【0033】次に、プログラム領域生成機能24は、原
始プログラムを構成している各ルーチンを解析し、パラ
メータ毎に使用するロジックに分割し、プログラム領域
情報241に格納する(ステップS26)。
【0034】次に、目的モジュール生成機能25は、原
始プログラム1内の全てのルーチンに対して呼出し元パ
ラメータ情報生成機能21、呼出し先パラメータ情報生
成機能22、データ領域生成機能23、プログラム領域
生成機能24の処理が終わった後に呼び出され、呼出し
元パラメータ情報211、呼出し先パラメータ情報22
1、データ領域情報231、プログラム領域情報241
の情報を結合して、目的モジュール3を生成する(ステ
ップS27)。
【0035】この目的モジュール3を含む目的モジュー
ル群をリンカ4に入力すると、リンカ4では、図3に示
す処理が行なわれる。
【0036】まず、メインルーチン解析機能41にて、
目的モジュール群からメインルーチンの宣言されている
目的モジュールを探査し、その目的モジュール内のメイ
ンルーチンに関する呼出し元情報テーブル31を取り出
す(ステップS31)。
【0037】次に、ツリー生成機能42は、最初にメイ
ンルーチン解析機能41にて取り出されたメインルーチ
ンの呼出し元情報テーブルを調査し、メインルーチンか
ら呼び出しているルーチンをツリー情報421に接続
し、ツリー情報421に結合された各ルーチンの呼出し
元情報テーブル31を調べ、使用しているルーチンをツ
リー情報421へ接続する。この調査接続処理をツリー
情報421に格納された全ルーチンに対し繰り返して行
う。この時、同じ目的モジュールに格納されている他の
呼び出されていないルーチンはツリー情報421へ接続
しない(ステップS32)。例えば、メインルーチンか
らAmain()が呼ばれるとき、第二引数の値に
“1”が指定されている為、ツリー生成機能42は、B
sub()ルーチンを接続する。しかし、第二引数に
“2”は指定されていない為、Dsub()は接続しな
い。
【0038】次に、ツリー作成機能42は、接続対象と
したルーチン名等のルーチン情報を呼出し元情報テーブ
ル31と共にルーチン一覧生成機能43へ渡す。
【0039】次に、ルーチン一覧生成機能43は、ルー
チン名を第一キーとし、使用下位引数、使用データ領
域、使用サブルーチンなどで構成される情報をルーチン
一覧431に生成する。同一ルーチン名のルーチン情報
をルーチン一覧生成機能43が受け取った時、下位引数
が異なった場合、下位引数を第二キーにしてルーチン情
報、呼出し元情報を追加し、引数が同一であった場合、
一覧に情報を追加しない。ツリー生成機能42が使用す
るすべてのルーチンをツリー情報421に結合し、ルー
チン一覧生成機能43が使用するすべてのルーチンをル
ーチン一覧431に登録する(ステップS33)。
【0040】以上の処理を、ツリーに接続するルーチン
が無くなるまで、繰り返す(ステップS34)。
【0041】その後、目的プログラム生成機能44は、
ルーチン一覧表431を基に、必要なデータを目的モジ
ュール内のデータ領域33より取り出したものと、使用
するルーチンを目的モジュール内のプログラム領域34
より取り出し、それらの中で使用しない引数に関する不
要な判断処理及び呼出し処理を削除したものと結合する
ことによりプログラム上の無駄な処理を削除して目的プ
ログラム5を生成することができる(ステップS3
5)。例えば、上記原始プログラム1で、メインルーチ
ンが、Amain()関数の第一引数を“A”、第二引
数を“0”のみで呼び出している場合、目的プログラム
生成機能44は、Amain()から、第二引数
“0”,“2”を判断する処理、及び、第二引数が
“0”,“2”の時のみ使用するデータ、動作するロジ
ックを削除したものと、Bsub()ルーチンをメイン
ルーチンに結合し、目的プログラム5を生成する。
【0042】
【実施例】図4は、本発明の一実施例の動作を説明する
図である。
【0043】C言語で書かれた上位プログラムよりAm
ain()関数で呼ばれ、他の原始プログラムにあるA
sub()関数を呼び出している原始プログラムを例に
説明する。この時、Amain()関数の中で使用す
る、Asub()関数の第一引数は固定値で“A”が設
定され、第二引数は“0”と“1”と“3”のいずれか
が設定され、第三引数は可変値で上位プログラムからの
値を元に設定されるとする。
【0044】この原始プログラム1を、定数パラメータ
処理ルーチン削除機能付きコンパイラ2でコンパイルす
ると、目的モジュール3が作成され、その中に呼出し元
情報テーブル31、呼出し先情報テーブル32、データ
領域33、プログラム領域34の4つの情報部が作成さ
れる。
【0045】呼出し元情報テーブル31には、その原始
プログラム1が呼び出している各関数分の引数情報が格
納されている。各引数情報にはその引数が固定値/限定
値/可変値のいずれに該当するか、固定値/限定値の場
合、その値も格納される。例の場合、Asub()関数
の第一引数は固定値に該当し、値“A”が格納され、第
二引数は限定値、値“0”,“1”,“3”が格納さ
れ、第三引数は可変値に該当する。
【0046】呼出し先情報テーブル32には、その原始
プログラムが呼び出されたときに使用する情報、例え
ば、各関数毎の有効値、その値が使用しているデータ領
域のアドレスや大きさ、そのパラメータを処理している
ルーチン情報等を格納する。
【0047】データ領域33には、データに関する情報
(属性/大きさ等)を格納する。
【0048】プログラム領域34には、各処理ルーチン
を格納する。
【0049】この目的モジュール3と他の目的モジュー
ル(目的モジュール301,302等)を、不要な定数
パラメータ処理ルーチン削除機能付きリンカ4を使用し
て目的プログラム5を作成する。
【0050】この時、不要な定数パラメータ処理ルーチ
ン削除機能付きリンカ4は、各関数の呼ばれている全て
の目的モジュール内にある呼出し元情報テーブル31の
情報を結合し各引数毎に使用するパラメータ値を確定す
る。
【0051】その後、対象となる関数の格納されている
目的モジュール内の呼出し先情報テーブル32を使用
し、有効値に関するデータ領域/処理ルーチンのみを抜
き出し、目的プログラム内に作成していく。
【0052】この処理を繰り返すことにより、無効なデ
ータ及び処理ルーチンを削除した目的プログラムが作成
される。
【0053】以上の処理により、アクセスが絶対に無い
メモリ資源の削減と無駄な判断処理を減少させる事がで
き、これにより、処理の高速化が計られた目的プログラ
ムを作成するコンパイラ/リンカが実現される。
【0054】
【発明の効果】第1の効果は、プログラムのファイル容
量、メモリ容量の削減ができることである。
【0055】その理由は、以上説明したように、プログ
ラム実行中に絶対参照されないデータや使用されないル
ーチン、未使用パラメータの処理をプログラム作成時に
削除してしまうからである。
【0056】第2の効果は、リンク後の成果物の処理速
度の高速化ができることである。
【0057】その理由は、不必要なルーチンの呼び出し
判断処理、不必要なパラメータ処理を削除したことによ
り、全体の処理速度を向上させることができるからであ
る。
【図面の簡単な説明】
【図1】本発明の実施形態の構成を示すブロック図であ
る。
【図2】本発明の実施形態のコンパイラの内部動作を示
すフローチャートである。
【図3】本発明の実施形態のリンカの内部動作を示すフ
ローチャートである。
【図4】本発明の実施例の動作を説明する図である。
【符号の説明】
1 原始プログラム 2 定数パラメータ処理ルーチン削除機能付きコンパ
イラ 21 呼出し元パラメータ情報生成機能 211 呼出し元パラメータ情報 22 呼出し先パラメータ情報生成機能 221 呼出し先パラメータ情報 23 データ領域生成機能 231 データ領域情報 24 プログラム領域生成機能 241 プログラム領域情報 25 目的モジュール生成機能 3 目的モジュール 31 呼出し元情報テーブル 32 呼出し先情報テーブル 33 データ領域 34 プログラム領域 4 定数パラメータ処理ルーチン削除機能付きリンカ 41 メインルーチン解析機能 42 ツリー生成機能 421 ツリー情報 43 ルーチン一覧生成機能 431 ルーチン一覧 44 目的プログラム生成機能 5 目的プログラム

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 コンパイル時にコンパイラで得られた少
    なくとも呼出し元パラメータ情報に基づいて実際に使用
    しないパラメータに関する処理を削除するリンカを有す
    るコンピュータプログラム生成装置であって、 前記リンカは、入力した原始プログラムのルーチンを解
    析して生成した呼出し先パラメータ情報と前記呼出し元
    パラメータ情報とに基づいて削除する前記パラメータに
    関する処理を決定することを特徴とするコンピュータプ
    ログラム生成装置。
  2. 【請求項2】 前記コンパイラは、前記呼出し先パラメ
    ータ情報を生成する呼出先パラメータ情報生成手段を備
    えることを特徴とする請求項1に記載のコンピュータプ
    ログラム生成装置。
  3. 【請求項3】 前記リンカは、前記コンパイラによって
    生成された前記呼出し先パラメータ情報を格納する呼出
    し先情報テーブルを読み取り、呼び出しているルーチン
    を探し、ルーチン毎にツリー構造を作成していくツリー
    構造作成機能と、同時に動作する、ルーチン毎にその時
    のパラメータ情報をまとめ、呼出しルーチン一覧表を作
    成していくルーチン一覧作成機能、全ツリーが完成した
    時、前記呼出しルーチン一覧表の、使用するルーチン、
    パラメータの一覧の情報をもとに、前記各目的モジュー
    ルのデータ領域、プログラム領域から必要なデータ及び
    ルーチンを取り出し、ルーチン内の未使用パラメータに
    関する処理を削除し、該削除後のものを結合して目的プ
    ログラムを生成する目的プログラム生成機能と、を含む
    ことを特徴とする請求項1又は2に記載のコンピュータ
    プログラム生成装置。
  4. 【請求項4】 コンパイル時にコンパイラで得られた少
    なくとも呼出し元パラメータ情報に基づいて実際に使用
    しないパラメータに関する処理を削除するコンピュータ
    プログラム生成方法であって、 入力した原始プログラムのルーチンを解析して生成した
    呼出し先パラメータ情報と前記呼出し元パラメータ情報
    とに基づいて削除する前記パラメータに関する処理を決
    定することを特徴とするコンピュータプログラム生成方
    法。
JP33935996A 1996-12-19 1996-12-19 コンピュータプログラム生成装置及び方法 Expired - Fee Related JP3278584B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33935996A JP3278584B2 (ja) 1996-12-19 1996-12-19 コンピュータプログラム生成装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33935996A JP3278584B2 (ja) 1996-12-19 1996-12-19 コンピュータプログラム生成装置及び方法

Publications (2)

Publication Number Publication Date
JPH10187458A JPH10187458A (ja) 1998-07-21
JP3278584B2 true JP3278584B2 (ja) 2002-04-30

Family

ID=18326727

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33935996A Expired - Fee Related JP3278584B2 (ja) 1996-12-19 1996-12-19 コンピュータプログラム生成装置及び方法

Country Status (1)

Country Link
JP (1) JP3278584B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009098739A1 (ja) * 2008-02-05 2009-08-13 Panasonic Corporation プログラム最適化装置およびプログラム最適化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
発明協会公開技報公技番号94−5864号

Also Published As

Publication number Publication date
JPH10187458A (ja) 1998-07-21

Similar Documents

Publication Publication Date Title
EP0834810B1 (en) Automatic generation of test drivers
US5946489A (en) Apparatus and method for cross-compiling source code
US7784039B2 (en) Compiler, compilation method, and compilation program
JP3284956B2 (ja) プログラム変換方法、プログラム変換装置及びプログラム変換プログラムを記憶した記憶媒体
JP3813087B2 (ja) プログラム変換方法、コンピュータ装置及びプログラム
US7458071B2 (en) Compilation method, compiler apparatus and compiler
JPH10507016A (ja) ソフトウェア・コンパイル・ユニットを条件付きでコンパイルするシステム、方法およびコンパイラ・プリプロセッサ
EP0692115B1 (en) System for conversion of loop functions to continuation-passing style
JP4768984B2 (ja) コンパイル方法、コンパイルプログラムおよびコンパイル装置
US6198813B1 (en) System and method for providing call processing services using call independent building blocks
JP3278584B2 (ja) コンピュータプログラム生成装置及び方法
KR100305097B1 (ko) 최적화에 있어서 인터럽트 처리의 경감을 실현하는 컴파일러 및 그의 최적화 방법
WO2022047623A1 (zh) 一种软件信息组织方法、装置和计算机可读介质
JP7059757B2 (ja) Api処理方法、端末、api処理プログラム
JPH08272621A (ja) 動的メモリ領域を確保する関数呼出しの処理方法
JP3531728B2 (ja) オブジェクト指向型プログラミング言語で記述されたプログラムの構成関係管理装置及び方法並びに記憶媒体
JP2002132502A (ja) 言語機能解釈による分散オブジェクト自動生成システム及び方法
JPH1195995A (ja) データフロー解析装置、データフロー解析方法及びそのためのコンピュータプログラムを記録した記録媒体
JPH09274570A (ja) コンパイル方法及びコンパイラシステム
JPH04278632A (ja) ソフトウェア変換・再構成方法
JP2000339172A (ja) メモリ効率化方法
JPH0689187A (ja) インライン展開最適化方法
JPH05324344A (ja) 関数呼出し時の引数処理最適化方法
JPH0561687A (ja) コンパイラの処理方式
JPH07334399A (ja) 固定長レコード向けコード変換方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080215

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090215

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100215

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100215

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110215

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120215

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120215

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130215

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees