JPH05324302A - Language processing program processor - Google Patents

Language processing program processor

Info

Publication number
JPH05324302A
JPH05324302A JP12386392A JP12386392A JPH05324302A JP H05324302 A JPH05324302 A JP H05324302A JP 12386392 A JP12386392 A JP 12386392A JP 12386392 A JP12386392 A JP 12386392A JP H05324302 A JPH05324302 A JP H05324302A
Authority
JP
Japan
Prior art keywords
file
object information
input
source
information
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
JP12386392A
Other languages
Japanese (ja)
Inventor
Hiroyasu Saikai
弘恭 西海
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 JP12386392A priority Critical patent/JPH05324302A/en
Publication of JPH05324302A publication Critical patent/JPH05324302A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To shorten assembling time by performing the assembling of only a segment which is changed by inputting difference between source program information of present version and last version to substitute the difference for object information of last version by the unit of segment. CONSTITUTION:A source program information input part 104 inputs the contents of source files 102, 103 before and after correction, and compares them, and detects a segment part to which the change is applied, and it is analyzed by a syntax analysis part 106. An object information generating part 107 generates the object information for analyzed program information. An object information input part 109 substitutes generated object information for the segment part in accordance with generated object information in an inputted existing object file 108. An object file output part 111 outputs it to an object file 112.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、言語処理プログラムの
開発処理に利用する。本発明は、アセンブル時間を短縮
し作業効率を向上させることができる言語処理プログラ
ム処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention is used in the development processing of language processing programs. The present invention relates to a language processing program processing device capable of reducing assembly time and improving work efficiency.

【0002】[0002]

【従来の技術】プログラム開発では、ソースプログラム
ファイルの編集、アセンブル、リンク、デバッグの一連
の作業が行われるが、各フェーズでエラーがあった場
合、またはソースプログラムの変更が必要になった場
合、エディタによりソースプログラムを再編集し、言語
処理プログラムにより再度アセンブルを行っていた。
2. Description of the Related Art In program development, a series of work of editing, assembling, linking, and debugging of a source program file is performed. However, if there is an error in each phase or if the source program needs to be changed, The source program was reedited with an editor, and the language processing program was used to assemble again.

【0003】図6は従来例における処理動作の流れを示
すフローチャートである。ソースプログラム作成・修正
工程201ではエディタによりソースプログラムを作成
する。次に、アセンブル工程202で言語処理プログラ
ムによりソースプログラムのアセンブルを行う。このと
きアセンブルエラーがあれば、アセンブル工程202に
戻り、ソースプログラムの修正を行う。ソースプログラ
ムが複数のファイルで構成されている場合は、各ファイ
ルにおいて同じ工程により作業を行う。アセンブル工程
202において、アセンブルエラーが発生しなくなり、
オブジェクトファイルが得られたときにリンク工程20
3に移る。
FIG. 6 is a flow chart showing the flow of the processing operation in the conventional example. In the source program creation / correction step 201, a source program is created by an editor. Next, in the assembling step 202, the source program is assembled by the language processing program. At this time, if there is an assemble error, the process returns to the assemble step 202 to correct the source program. If the source program is composed of multiple files, work is performed in the same process for each file. No assemble error occurs in the assemble step 202,
Link process 20 when object file is obtained
Move to 3.

【0004】リンク工程203ではアセンブル工程20
2で得られたオブジェクトファイルとライブラリをリン
クする。リンク時にエラーが発生した場合はソースプロ
グラム作成・修正工程201に戻り、ソースプログラム
の修正を行う。正常にリンクが終了し実行プログラムが
得られたときにデバッグ工程204に作業を進める。デ
バッグ工程204では実行プログラムが予想通りの動き
をするか否かを確認し、問題があれば、再度ソースプロ
グラム作成・修正工程201に戻り、ソースプログラム
の修正を行う。
In the link process 203, the assembling process 20 is performed.
Link the object file obtained in step 2 and the library. If an error occurs during linking, the process returns to the source program creation / correction step 201 to correct the source program. When the link is normally completed and the execution program is obtained, the work proceeds to the debug step 204. In the debug step 204, it is confirmed whether or not the execution program behaves as expected, and if there is a problem, the process returns to the source program creation / correction step 201 again to correct the source program.

【0005】このように、アセンブル工程202におい
てアセンブルエラーがなかった場合でも、リンク工程2
03においてリンクエラーが発生したり、デバッグ工程
204において実行プログラムの動作に不備な点があっ
た場合には、ソースプログラム作成・修正工程201で
エディタによりソースプログラムを修正し、アセンブル
工程202で言語処理プログラムによりアセンブルを行
う作業を繰り返していた。
Thus, even if there is no assemble error in the assemble step 202, the link step 2
If a link error occurs in 03 or if there is a defect in the operation of the execution program in the debugging step 204, the source program is modified by the editor in the source program creation / modification step 201, and the language processing is performed in the assemble step 202. The work to assemble by the program was repeated.

【0006】前述したオブジェクトファイルは、言語処
理プログラムが入力したソースプログラムと1対1に対
応するもので、主にコード部、データ部、シンボル情報
から構成される。コード部はソースプログラムのうち実
行文に対応するものであり、データ部はソースプログラ
ムのうち変数の定義に対応するものであり、シンボルテ
ーブルは変数の型や属性に関する付加情報である。 (参考文献)Compilers Principl
s,Techniquesand Tools A.
V.Abo.J.D.Ulman
The above-mentioned object file has a one-to-one correspondence with the source program input by the language processing program, and mainly comprises a code part, a data part, and symbol information. The code part corresponds to the executable statement in the source program, the data part corresponds to the definition of the variable in the source program, and the symbol table is additional information on the type and attribute of the variable. (References) Compilers Principl
s, Techniques and Tools A.S.
V. Abo. J. D. Ulman

【0007】[0007]

【発明が解決しようとする課題】上述した従来の言語処
理プログラムの処理は、ソースプログラムの変更箇所が
わずかであっても、変更のあったソースプログラムファ
イル全体をアセンブルするため、未変更部分もアセンブ
ルの対象となり、無駄な時間を要する欠点があった。
In the processing of the conventional language processing program described above, the entire source program file that has changed is assembled even if there are few changes in the source program. Therefore, the unmodified portion is also assembled. However, there was a disadvantage that it wasted time.

【0008】プログラム開発では、ソースプログラムの
変更やアセンブルを行う作業が頻繁に行われるため、プ
ログラム開発全体にかかる作業時間の中でその作業部分
が多くの時間を占める。その中にはソースプログラムフ
ァイル中の変更されていない部分のアセンブル時間も含
まれているためにさらに作業効率を低下させる要因とな
っている。
In the program development, the work of changing and assembling the source program is frequently performed, so that the work portion occupies a lot of the work time required for the whole program development. Since it also includes the assembly time of the unchanged portion of the source program file, it is a factor that further reduces work efficiency.

【0009】本発明はこのような背景のもとに行われる
もので、現在のソースプログラム情報と前版のソースプ
ログラム情報との差分を入力し、前版のオブジェクト情
報内へその差分に対するオブジェクト情報をセグメント
単位で置換して変更のあったセグメントのみのアセンブ
ルを行い、未変更の部分に要するアセンブル時間を短縮
し、プログラム開発全体の作業効率を向上させることが
できる装置を提供することを目的とする。
The present invention is carried out under such a background. The difference between the current source program information and the previous version of the source program information is input, and the object information corresponding to the difference is entered into the object information of the previous version. The purpose of the present invention is to provide a device capable of assembling only changed segments by replacing each segment with a segment unit, shortening the assemble time required for unmodified portions, and improving the work efficiency of the entire program development. To do.

【0010】[0010]

【課題を解決するための手段】本発明は、ソースファイ
ルからソースプログラム情報を入力するソースプログラ
ム情報入力部と、入力されたソースプログラム情報を解
析しオブジェクト情報を生成するオブジェクト情報生成
部を有する構文解析部と、生成されたオブジェクト情報
をオブジェクトファイルに出力するオブジェクトファイ
ル出力部とを備えた言語処理プログラム処理装置におい
て、前記ソースプログラム情報入力部に、現在のソース
プログラム情報と前版のソースプログラム情報とを比較
し、変更のあったセグメント部分を検出して前記構文解
析部に送出する比較部を含み、オブジェクトファイルか
ら既存のオブジェクト情報を入力するとともに、前記オ
ブジェクト情報生成部が生成したオブジェクト情報を入
力するオブジェクト情報入力部を備え、このオブジェク
ト情報入力部に、入力した既存のオブジェクト情報のう
ちの前記オブジェクト情報生成部が生成したオブジェク
ト情報に対応する部分と、生成したオブジェクト情報と
を連続領域としてアセンブルする最小領域であるセグメ
ント単位で置換する置換部を含むことを特徴とする。
SUMMARY OF THE INVENTION The present invention is a syntax having a source program information input section for inputting source program information from a source file and an object information generating section for analyzing the input source program information and generating object information. In a language processing program processing device including an analysis unit and an object file output unit that outputs the generated object information to an object file, the source program information input unit includes the current source program information and the previous version source program information. And a comparison unit that detects a changed segment part and sends it to the syntax analysis unit, inputs existing object information from an object file, and outputs the object information generated by the object information generation unit. The object to enter An information input unit is provided, and in this object information input unit, a portion corresponding to the object information generated by the object information generation unit in the existing input object information and the generated object information are assembled as a continuous area. It is characterized in that it includes a replacement unit for replacing in units of segments that are regions.

【0011】[0011]

【作用】修正前のソースファイルおよび修正後のソース
ファイルの内容を入力して比較し、変更のあったセグメ
ント部分(連続領域としてアセンブルする最小領域)を
検出して解析する。この解析されたプログラム情報に対
するオブジェクト情報を生成し、既存のオブジェクト情
報のうちの生成したオブジェクト情報に対応するセグメ
ント部分と生成したオブジェクト情報とをセグメント単
位で置換してオブジェクトファイルに出力する。
The contents of the source file before modification and the contents of the source file after modification are input and compared, and the changed segment portion (minimum area to be assembled as a continuous area) is detected and analyzed. Object information corresponding to the analyzed program information is generated, and a segment portion corresponding to the generated object information in the existing object information and the generated object information are replaced for each segment and output to the object file.

【0012】このように、現在のソースプログラム情報
と前版のソースプログラム情報との差分を入力し、前版
のオブジェクト情報内にその差分に対するオブジェクト
情報をセグメント単位で置換することにより、変更のあ
ったセグメントのみのアセンブルを行うことができ、こ
れにより未変更の部分に対するアセンブル時間の短縮を
はかることができ、プログラム開発全体の作業効率を向
上させることができる。
As described above, there is a change by inputting the difference between the current source program information and the previous version of the source program information and replacing the object information for the difference in the previous version of the object information in segment units. It is possible to assemble only different segments, which can shorten the assemble time for the unchanged parts and improve the work efficiency of the entire program development.

【0013】[0013]

【実施例】次に、本発明実施例を図面に基づいて説明す
る。図1は本発明第一実施例および第二実施例の構成を
示すブロック図である。 (第一実施例)図1に示すように本発明第一実施例は、
修正前のソースファイル102および修正後のソースフ
ァイル103からソースプログラム情報を入力するソー
スプログラム情報入力部104と、入力されたソースプ
ログラム情報を解析しオブジェクト情報を生成するオブ
ジェクト情報生成部107を有する構文解析部106
と、生成されたオブジェクト情報をオブジェクトファイ
ル112に出力するオブジェクトファイル出力部111
とを備え、さらに、本発明の特徴として、ソースプログ
ラム情報入力部104に、修正前のソースプログラム情
報と修正後のソースプログラム情報とを入力して比較
し、変更のあったセグメント部分を検出して構文解析部
106に送出する比較部105を含み、既存のオブジェ
クトファイル108から既存のオブジェクト情報を入力
するとともに、オブジェクト情報生成部107が生成し
たオブジェクト情報を入力するオブジェクト情報入力部
109を備え、このオブジェクト情報入力部109に、
入力した既存のオブジェクト情報のうちのオブジェクト
情報生成部107が生成したオブジェクト情報に対応す
る部分と、生成したオブジェクト情報とを連続領域とし
てアセンブルする最小領域であるセグメント単位で置換
する置換部110を含む。
Embodiments of the present invention will now be described with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a first embodiment and a second embodiment of the present invention. (First Embodiment) As shown in FIG. 1, the first embodiment of the present invention is
A syntax having a source program information input unit 104 for inputting source program information from the unmodified source file 102 and modified source file 103, and an object information generation unit 107 for analyzing the input source program information and generating object information. Analysis unit 106
And an object file output unit 111 that outputs the generated object information to the object file 112.
Further, as a feature of the present invention, the source program information input unit 104 inputs the source program information before the modification and the source program information after the modification and compares them, and detects a changed segment portion. And an object information input unit 109 for inputting the existing object information from the existing object file 108 and for inputting the object information generated by the object information generation unit 107. In the object information input section 109,
A replacement unit 110 that replaces a portion of the input existing object information corresponding to the object information generated by the object information generation unit 107 and the generated object information in segment units, which is the minimum area to be assembled as a continuous area. ..

【0014】次に、このように構成された本発明第一実
施例の動作について説明する。まず、図1に基づき全体
の処理の流れについて説明する。
Next, the operation of the first embodiment of the present invention thus constructed will be described. First, the overall processing flow will be described with reference to FIG.

【0015】ソースプログラム情報入力部104は、修
正前のソースファイル102と修正後のソースファイル
103の内容を入力する。ソースプログラム情報入力部
104の比較部105は、入力した修正前のソースファ
イル102と修正後のソースファイル103の内容を比
較し、変更のあったセグメント部分を検出し構文解析部
106へ渡す。構文解析部106は、比較部105から
渡されたソースプログラム情報を解析する。オブジェク
ト情報生成部107は、構文解析部106で解析された
プログラム情報に対するオブジェクト情報を生成する。
オブジェクト情報入力部109は、既存のオブジェクト
ファイル108のオブジェクト情報とオブジェクト情報
生成部107が生成したオブジェクト情報を入力する。
オブジェクト情報入力部109の置換部110は、入力
した既存のオブジェクトファイル108のうちのオブジ
ェクト情報生成部107が生成したオブジェクト情報に
対応するセグメント部分と、オブジェクト情報生成部1
07が生成したオブジェクト情報とをセグメント単位で
置換する。オブジェクトファイル出力部111は、置換
部110から渡されたオブジェクト情報をオブジェクト
ファイル112に出力する。
The source program information input unit 104 inputs the contents of the source file 102 before modification and the source file 103 after modification. The comparison unit 105 of the source program information input unit 104 compares the input contents of the source file 102 before modification and the source file 103 after modification, detects a changed segment portion, and passes it to the syntax analysis unit 106. The syntax analysis unit 106 analyzes the source program information passed from the comparison unit 105. The object information generation unit 107 generates object information for the program information analyzed by the syntax analysis unit 106.
The object information input unit 109 inputs the object information of the existing object file 108 and the object information generated by the object information generation unit 107.
The replacement unit 110 of the object information input unit 109 includes a segment portion of the input existing object file 108 corresponding to the object information generated by the object information generation unit 107, and the object information generation unit 1
The object information generated by 07 is replaced in segment units. The object file output unit 111 outputs the object information passed from the replacement unit 110 to the object file 112.

【0016】次に、図2に示す処理動作の流れにしたが
って本発明第一実施例の動作について説明する。
Next, the operation of the first embodiment of the present invention will be described according to the flow of processing operations shown in FIG.

【0017】まず、ソースプログラム情報入力部104
が修正前のソースファイル102および修正後のソース
ファイル103からソースプログラム情報を取り込み、
変更が行われたか否かのファイル診断処理を行い(30
1)、変更が行われていなかった場合は処理を終了す
る。ソースファイルを作成した直後の第1回目のアセン
ブル時には、修正前のソースファイル102がないため
変更が行われたとみなす。
First, the source program information input unit 104
Imports source program information from the source file 102 before modification and the source file 103 after modification,
File diagnosis processing is performed to determine whether or not changes have been made (30
1) If the change has not been made, the process ends. At the time of the first assembling immediately after the source file is created, it is considered that the change has been made because there is no source file 102 before correction.

【0018】次いで、ソースファイルの入力が終了した
か否かのソースファイル終了検出処理を行い(30
2)、終了していればその処理をオブジェクトファイル
入力処理部307に移す。終了していなければその処理
をソースファイル入力処理303に移す。ソースファイ
ル入力処理303では、修正前のソースファイル102
と修正後のソースファイル103とを入力し、修正前の
ソースファイル102がない場合は存在する一つのソー
スファイルを入力する。
Next, a source file end detection process is performed to determine whether the source file input is completed (30
2) If the processing is completed, the processing is moved to the object file input processing unit 307. If not completed, the processing is moved to the source file input processing 303. In the source file input processing 303, the source file 102 before correction
And the source file 103 after correction are input, and if there is no source file 102 before correction, one existing source file is input.

【0019】続いて、比較部105がソースファイル入
力処理303により入力された修正前のソースファイル
102および修正後のソースファイル103の内容を比
較するプログラム情報比較処理を行い(304)、変更
のあったセグメント部分を構文解析部106に渡す。ま
た、修正前のソースファイル102がない場合は、入力
したすべてのソースプログラム情報を構文解析部106
に渡す。構文解析部106は、プログラム情報比較処理
304が行われたソースプログラム情報を解析し(30
5)、オブジェクト情報生成部107が構文解析処理3
05で解析されたプログラム情報に対するオブジェクト
情報を生成するオブジェクト情報生成処理を行う(30
6)。
Subsequently, the comparison unit 105 performs program information comparison processing for comparing the contents of the source file 102 before correction and the source file 103 after correction input by the source file input processing 303 (304), and there is a change. The segment segment is passed to the syntax analysis unit 106. In addition, if there is no source file 102 before correction, all the input source program information is analyzed by the syntax analysis unit 106.
Pass to. The syntax analysis unit 106 analyzes the source program information subjected to the program information comparison processing 304 (30
5), the object information generation unit 107 causes the syntax analysis processing 3
Object information generation processing for generating object information for the program information analyzed in 05 is performed (30
6).

【0020】ソースファイル終了検出処理302でソー
スファイルの入力が終了している場合は、オブジェクト
情報入力部109が既存のオブジェクトファイル108
から既存のオブジェクトファイルの内容を入力するオブ
ジェクトファイル入力処理を行う(307)。第1回目
のアセンブル時にはオブジェクトファイルが存在しない
ため処理を行わない。次いで、置換部110がオブジェ
クトファイル入力処理307で入力した既存のオブジェ
クトファイルのうちのオブジェクト情報生成処理306
で生成したオブジェクト情報に対応するセグメント部分
と、オブジェクト情報生成処理306で生成したオブジ
ェクト情報とをセグメント単位で置換し、オブジェクト
ファイル出力部111に渡す。第1回目のアセンブル時
には置換はおこなわず、オブジェクト情報生成処理30
6で生成したオブジェクト情報をそのままオブジェクト
ファイル出力部111に渡す。オブジェクトファイル出
力部111はオブジェクト情報置換処理308を受けた
情報をオブジェクトファイル112に出力する。
When the input of the source file is completed in the source file end detection processing 302, the object information input unit 109 causes the existing object file 108
Object file input processing for inputting the contents of the existing object file is executed (307). At the first assembly time, no processing is performed because the object file does not exist. Then, the replacing unit 110 generates the object information generation process 306 of the existing object files input in the object file input process 307.
The segment portion corresponding to the object information generated in step (3) and the object information generated in the object information generation process 306 are replaced in segment units and passed to the object file output unit 111. No replacement is performed during the first assembly, and the object information generation process 30
The object information generated in 6 is directly passed to the object file output unit 111. The object file output unit 111 outputs the information received by the object information replacement processing 308 to the object file 112.

【0021】従来の技術で説明したように、オブジェク
トファイルはコード部、データ部、シンボルテーブルに
より構成される。本発明実施例では、ソースファイルに
おいて変更のあったセグメント部分を構文解析してオブ
ジェクト情報を生成し、この情報のうちコード部、デー
タ部、シンボルテーブルそれぞれをオブジェクトファイ
ル中の対応する部分と交換する。これをオブジェクトフ
ァイルの置換という。
As described in the prior art, the object file is composed of the code part, the data part and the symbol table. In the embodiment of the present invention, the changed segment part in the source file is parsed to generate object information, and the code part, the data part, and the symbol table of this information are replaced with the corresponding parts in the object file. .. This is called replacement of the object file.

【0022】図4は変更前のソースファイル102の内
容(ソースプログラム)を示す図である。ここで、前述
のセグメントについて説明する。セグメントとはソース
プログラム情報において、連続領域としてアセンブルす
る最小領域のことを指すもので、図4の5行目がセグメ
ントの開始を示し、セグメントの名前が〔外1〕であ
り、セグメントの属性がコードのセグメントである。1
7行目はセグメントの終了を示すものである。この5行
目から17行目が1セグメントであり、同様に19行目
から29行目も1セグメントである。
FIG. 4 is a diagram showing the contents (source program) of the source file 102 before the change. Here, the aforementioned segment will be described. The segment refers to the minimum area assembled in the source program information as a continuous area. The fifth line in FIG. 4 indicates the start of the segment, the segment name is [outer 1], and the segment attribute is It is a segment of code. 1
The 7th line shows the end of the segment. The 5th to 17th lines are 1 segment, and the 19th to 29th lines are also 1 segment.

【0023】[0023]

【外1】 図5は変更後のソースファイル103の内容(ソースプ
ログラム)を示す図である。図4と図5の左側の数字は
説明のために付けたソースプログラム中の行番号であ
る。
[Outer 1] FIG. 5 is a diagram showing the contents (source program) of the source file 103 after the change. The numbers on the left side of FIGS. 4 and 5 are line numbers in the source program added for the sake of explanation.

【0024】さらに、図2に示すフローチャートに従
い、図4および図5に示すソースファイルの処理につい
て具体的に説明する。
Further, the processing of the source files shown in FIGS. 4 and 5 will be specifically described with reference to the flowchart shown in FIG.

【0025】1.ソースファイル診断処理301で修正
前のソースファイルと修正後のソースファイルとにおい
て変更が行われたか否かを診断し、変更が行われている
場合は処理を継続する。
1. In the source file diagnosis processing 301, it is diagnosed whether or not a change has been made in the source file before correction and the source file after correction, and if the change has been made, the processing is continued.

【0026】2.ソースファイル終了検出処理302
で、ソースファイルの入力が終了したか否かを検出し、
終了していない場合はその処理をソースファイル入力処
理303へ移す。
2. Source file end detection process 302
Detects whether the input of the source file is completed,
If not completed, the process is transferred to the source file input process 303.

【0027】3.ソースファイル入力処理303では図
4に示す修正前のソースファイルと図5に示す修正後の
ソースファイルとを入力する。この処理でセグメント
〔外1〕部分が入力される。
3. In the source file input processing 303, the source file before correction shown in FIG. 4 and the source file after correction shown in FIG. 5 are input. By this processing, the segment [outer 1] portion is input.

【0028】4.プログラム情報比較処理304でソー
スファイル入力処理303により入力された図4に示す
修正前のソースファイルと図5に示す修正後のソースフ
ァイルとを比較し、セグメント〔外1〕のうちの12行
目が変更されているので変更のあったセグメント部分
〔外1〕を構文解析処理305へ渡す。
4. In the program information comparison processing 304, the source file before correction shown in FIG. 4 input by the source file input processing 303 and the corrected source file shown in FIG. 5 are compared, and the 12th line of the segment [outer 1] Is changed, the changed segment part [outer 1] is passed to the syntax analysis process 305.

【0029】5.構文解析処理305でプログラム情報
比較処理304から渡されたセグメント〔外1〕のソー
スプログラム情報を解析する。
5. In the syntax analysis process 305, the source program information of the segment [outer 1] passed from the program information comparison process 304 is analyzed.

【0030】6.オブジェクト情報生成処理306で構
文解析処理305により解析されたセグメント〔外1〕
に対するオブジェクト情報を生成する。
6. Segment analyzed by the syntax analysis process 305 in the object information generation process 306 [External 1]
Generate object information for.

【0031】7.処理はソースファイル終了検出処理3
02に戻り、入力するソースファイルが終了したか否か
を検出し、終了していない場合はその処理をソースファ
イル入力処理303に移す。
7. Processing is source file end detection processing 3
Returning to 02, it is detected whether or not the input source file has ended, and if it has not ended, the process moves to the source file input process 303.

【0032】8.同様にソースファイル入力処理303
では図4に示す修正前のソースファイルと図5に示す修
正後のソースファイルとを入力する。すでにセグメント
〔外1〕は入力されているため、次のセグメント〔外
2〕部分が入力される。
8. Similarly, source file input processing 303
Then, the source file before modification shown in FIG. 4 and the source file after modification shown in FIG. 5 are input. Since the segment [outer 1] has already been input, the next segment [outer 2] portion is input.

【0033】[0033]

【外2】 9.プログラム情報比較処理304でソースファイル入
力処理303により入力された図4に示す修正前のソー
スファイルと図5に示す修正後のソースファイルとを比
較し、変更がない場合はその処理をソースファイル終了
検出処理302へ移す。 10.以上の処理を繰り返し、ソースファイル終了検出
処理302で入力するソースファイルが終了したことを
検出した後、オブジェクトファイル入力処理307へ処
理を移す。 11.オブジェクトファイル入力処理307で既存のオ
ブジェクトファイルを入力する。これは図4に示す修正
前のソースファイルをアセンブルした際に得られたオブ
ジェクトファイルである。 12.オブジェクト情報置換処理308でオブジェクト
ファイル入力処理307で入力した既存のオブジェクト
ファイルのうちのセグメント〔外1〕に対応する部分を
オブジェクト情報生成処理306で生成したセグメント
〔外1〕に対するオブジェクト情報と置換する。 13.オブジェクトファイル出力処理309でオブジェ
クト情報置換処理308で置換済みのオブジェクト情報
をオブジェクトファイルへ出力して処理を終了する。 (第二実施例)本発明第二実施例は図1に示す第一実施
例同様に構成される。全体の処理の流れは第一実施例同
様に行われる。図3は本発明第二実施例における処理動
作の流れを示すフローチャートである。
[Outside 2] 9. In the program information comparison processing 304, the source file before correction shown in FIG. 4 input by the source file input processing 303 and the corrected source file shown in FIG. 5 are compared, and if there is no change, the processing ends the source file. The process moves to the detection process 302. 10. The above processing is repeated, and after detecting that the input source file has ended in the source file end detection processing 302, the processing moves to the object file input processing 307. 11. An object file input process 307 inputs an existing object file. This is an object file obtained when assembling the source file before modification shown in FIG. 12. In the object information replacement processing 308, the portion corresponding to the segment [outer 1] of the existing object file input in the object file input processing 307 is replaced with the object information for the segment [outer 1] generated in the object information generation processing 306. .. 13. In the object file output process 309, the object information replaced in the object information replacement process 308 is output to the object file, and the process ends. (Second Embodiment) The second embodiment of the present invention is constructed similarly to the first embodiment shown in FIG. The entire processing flow is the same as in the first embodiment. FIG. 3 is a flow chart showing the flow of processing operations in the second embodiment of the present invention.

【0034】まず、ソースプログラム情報入力部104
が修正前のソースファイル102と修正後のソースファ
イル103からソースプログラム情報を取り込み、変更
が行われたか否かのファイル診断処理を行い(40
1)、変更が行われていなかった場合は処理を終了す
る。ソースファイルを作成した直後の第1回目のアセン
ブル時には、修正前のソースファイル102がないため
変更が行われたとみなす。
First, the source program information input section 104
Captures the source program information from the source file 102 before modification and the source file 103 after modification, and performs file diagnosis processing as to whether or not the modification has been performed (40
1) If the change has not been made, the process ends. At the time of the first assembling immediately after the source file is created, it is considered that the change has been made because there is no source file 102 before correction.

【0035】次いで、ソースファイルの入力が終了した
か否かのソースファイル終了検出処理を行い(40
2)、終了していればその処理を終了する。終了してい
なければその処理をソースファイル入力処理403に移
す。ソースファイル入力処理403では、修正前のソー
スファイル102と修正後のソースファイル103とを
入力し、修正前のソースファイル102がない場合は存
在する一つのソースファイルを入力する。
Then, a source file end detection process is performed to determine whether or not the input of the source file is completed (40
2) If it is completed, the processing is completed. If not completed, the processing is moved to the source file input processing 403. In the source file input process 403, the source file 102 before correction and the source file 103 after correction are input, and if there is no source file 102 before correction, one existing source file is input.

【0036】続いて、既存のオブジェクトファイル10
8からソースファイル入力処理403により入力された
セグメント部分に対応するオブジェクト情報を入力する
オブジェクトファイル入力処理を行う(404)。第1
回目のアセンブル時にはオブジェクトファイルが存在し
ないため処理を行わない。比較部105がソースファイ
ル入力処理403により入力された修正前のソースファ
イル102と修正後のソースファイル103との内容を
比較するプログラム情報比較処理を行い(405)、変
更のあったセグメント部分を構文解析部106に渡す。
修正前のソースファイルがない場合は入力したすべての
ソースプログラム情報を構文解析部106に渡す。
Next, the existing object file 10
Object file input processing for inputting object information corresponding to the segment portion input by the source file input processing 403 from 8 is performed (404). First
No process is performed because the object file does not exist when assembling for the first time. The comparison unit 105 performs program information comparison processing for comparing the contents of the source file 102 before correction and the source file 103 after correction input by the source file input processing 403 (405), and the changed segment part is syntactic It is passed to the analysis unit 106.
If there is no source file before correction, all the input source program information is passed to the syntax analysis unit 106.

【0037】構文解析部106は、プログラム情報比較
処理405により渡されたソースプログラム情報を解析
する(406)。次いで、オブジェクト情報生成部10
7が構文解析処理406で解析されたプログラム情報に
対するオブジェクト情報を生成するオブジェクト情報生
成処理を行い(407)、オブジェクト情報入力部10
9の置換部110がオブジェクトファイル入力処理40
4で入力したオブジェクト情報とオブジェクト情報生成
処理407で生成したオブジェクト情報とを置換する
(408)。置換する内容は第一実施例と同じである。
続いて置換したオブジェクト情報をオブジェクトファイ
ル出力部111に渡す。第1回目のアセンブル時には置
換は行わず、オブジェクト情報生成処理407で生成し
たオブジェクト情報をそのままオブジェクトファイル出
力部109に渡す。オブジェクトファイル出力部109
は、オブジェクト情報置換処理408により渡されたオ
ブジェクト情報またはオブジェクトファイル入力処理4
04で入力したオブジェクト情報をオブジェクトファイ
ル112に出力する。
The syntax analysis unit 106 analyzes the source program information passed by the program information comparison processing 405 (406). Then, the object information generation unit 10
7 performs object information generation processing for generating object information for the program information analyzed by the syntax analysis processing 406 (407), and the object information input unit 10
9 replaces the object file input processing 40
The object information input in 4 is replaced with the object information generated in the object information generation processing 407 (408). The contents to be replaced are the same as in the first embodiment.
Subsequently, the replaced object information is passed to the object file output unit 111. No replacement is performed during the first assembly, and the object information generated by the object information generation processing 407 is passed to the object file output unit 109 as it is. Object file output unit 109
Is the object information or object file input process 4 passed by the object information replacement process 408.
The object information input in 04 is output to the object file 112.

【0038】本第二実施例の場合も変更前のソースファ
イル102の内容(ソースプログラム)および変更後の
ソースファイル103の内容(ソースプログラム)は図
5および図6に示す通りであり、左側の数字は説明のた
めに付けたソースプログラム中の行番号である。
Also in the second embodiment, the contents of the source file 102 before the change (source program) and the contents of the source file 103 after the change (source program) are as shown in FIG. 5 and FIG. The numbers are line numbers in the source program added for explanation.

【0039】ここで、図3に示すフローチャートに従
い、図4および図5に示すソースファイルの処理につい
て説明する。
Now, the processing of the source files shown in FIGS. 4 and 5 will be described with reference to the flowchart shown in FIG.

【0040】1.ソースファイル診断処理401で修正
前のソースファイルと修正後のソースファイルとで変更
が行われたか否かを診断し、変更が行われている場合は
処理を継続する。
1. In the source file diagnosis processing 401, it is diagnosed whether or not the source file before correction and the source file after correction are changed, and if the change is made, the processing is continued.

【0041】2.ソースファイル終了検出処理402で
入力するソースファイルが終了したか否かを検出し、終
了していない場合はソースファイル入力処理403に移
す。
2. In the source file end detection processing 402, it is detected whether or not the input source file has ended, and if it has not ended, the processing moves to the source file input processing 403.

【0042】3.ソースファイル入力処理403で図4
に示す修正前のソースファイルと図5に示す修正後のソ
ースファイルとを入力する。この処理でセグメント〔外
1〕部分が入力される。
3. The source file input process 403 is shown in FIG.
The source file before correction shown in and the source file after correction shown in FIG. 5 are input. By this processing, the segment [outer 1] portion is input.

【0043】4.オブジェクトファイル入力処理404
で図4に示す修正前のソースファイルをアセンブルした
際に得られたオブジェクトファイルからソースファイル
入力処理403により入力されたセグメント〔外1〕部
分に対応するオブジェクト情報を入力する。
4. Object file input process 404
Then, the object information corresponding to the segment [outer 1] portion input by the source file input process 403 is input from the object file obtained when the source file before correction shown in FIG. 4 is assembled.

【0044】5.プログラム情報比較処理405でソー
スファイル入力処理403により入力された図4に示す
修正前のソースファイルと図5に示す修正後のソースフ
ァイルとを比較し、セグメント〔外1〕のうちの12行
目が変更されているので変更のあったセグメント部分
〔外1〕を構文解析処理406に移す。
5. In the program information comparison processing 405, the source file before correction shown in FIG. 4 input by the source file input processing 403 and the source file after correction shown in FIG. 5 are compared, and the 12th line of the segment [outer 1] is compared. Has been changed, the changed segment part [outer 1] is moved to the syntax analysis process 406.

【0045】6.構文解析処理406でプログラム情報
比較処理405により渡されたセグメント〔外1〕のソ
ースプログラム情報を解析する。
6. The syntax analysis process 406 analyzes the source program information of the segment [outer 1] passed by the program information comparison process 405.

【0046】7.オブジェクト情報生成処理407で構
文解析処理406で解析されたセグメント〔外1〕に対
するオブジェクト情報を生成する。
7. Object information generation processing 407 generates object information for the segment [outer 1] analyzed by the syntax analysis processing 406.

【0047】8.オブジェクト情報置換処理408でオ
ブジェクトファイル入力処理404により入力されたセ
グメント〔外1〕に対応するオブジェクト情報とオブジ
ェクト情報生成処理407で生成されたセグメント〔外
1〕に対するオブジェクト情報とを置換する。置換され
る内容は実施例1と同じである。
8. In the object information replacement processing 408, the object information corresponding to the segment [outer 1] input by the object file input processing 404 and the object information for the segment [outer 1] generated in the object information generation processing 407 are replaced. The contents to be replaced are the same as in the first embodiment.

【0048】9.オブジェクトファイル出力処理409
でオブジェクト情報置換処理408により置換済みのオ
ブジェクト情報をオブジェクトファイルへ出力する。 10.処理はソースファイル終了検出処理402に戻
り、入力するソースファイルが終了したか否かを検出す
るが、終了していない場合は処理をソースファイル入力
処理403に移す。 11.同様にソースファイル入力処理403で図4に示
す修正前のソースファイルと、図5に示す修正後のソー
スファイルとを入力する。すでにセグメント〔外1〕は
入力されているため、次のセグメント〔外2〕部分が入
力される。 12.オブジェクトファイル入力処理404では、図4
に示す修正前のソースファイルをアセンブルした際に得
られたオブジェクトファイルからソースファイル入力処
理403で入力されたセグメント〔外2〕部分に対応す
るオブジェクト情報を入力する。 13.プログラム情報比較処理405でソースファイル
入力処理403により入力された図4に示す修正前のソ
ースファイルと、図5に示す修正後のソースファイルと
を比較し、変更がないので処理をオブジェクトファイル
出力処理409に移す。 14.オブジェクトファイル出力処理409ではオブジ
ェクトファイル入力処理404で入力済みのオブジェク
ト情報をオブジェクトファイルへ出力する。 15.処理はソースファイル終了検出処理402に戻
る。 16.以上の処理を繰り返し、ソースファイル終了検出
処理402で入力するソースファイルが終了したことを
検出した後に処理を終了する。
9. Object file output process 409
Then, the replaced object information is output to the object file by the object information replacement processing 408. 10. The process returns to the source file end detection process 402 to detect whether or not the input source file has ended. If not, the process moves to the source file input process 403. 11. Similarly, in the source file input processing 403, the source file before correction shown in FIG. 4 and the source file after correction shown in FIG. 5 are input. Since the segment [outer 1] has already been input, the next segment [outer 2] portion is input. 12. In the object file input process 404, as shown in FIG.
The object information corresponding to the segment [outer 2] portion input in the source file input processing 403 is input from the object file obtained when the source file before correction shown in (4) is assembled. 13. In the program information comparison processing 405, the source file before correction shown in FIG. 4 input by the source file input processing 403 and the corrected source file shown in FIG. 5 are compared, and since there is no change, the processing is an object file output processing. Move to 409. 14. In the object file output process 409, the object information already input in the object file input process 404 is output to the object file. 15. The process returns to the source file end detection process 402. 16. The above processing is repeated, and the processing ends after it is detected in the source file end detection processing 402 that the input source file has ended.

【0049】[0049]

【発明の効果】以上説明したように本発明によれば、現
在のソースプログラム情報と、前版のソースプログラム
情報との差分を入力し、前版のオブジェクト情報内へ前
記の差分に対するオブジェクト情報をセグメント単位で
置換することにより、変更のあったセグメントのみのア
センブルを行うことができ、未変更の部分に対するアセ
ンブル時間の短縮が可能になり、プログラム開発全体の
作業効率を向上させることができる効果がある。
As described above, according to the present invention, the difference between the current source program information and the previous version source program information is input, and the object information corresponding to the difference is entered in the previous version object information. By replacing in segment units, you can assemble only the changed segments, shorten the assembly time for the unchanged parts, and improve the efficiency of the entire program development. is there.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明第一および第二実施例の構成を示すブロ
ック図。
FIG. 1 is a block diagram showing a configuration of first and second embodiments of the present invention.

【図2】本発明第一実施例における処理動作の流れを示
すフローチャート。
FIG. 2 is a flowchart showing the flow of processing operations in the first embodiment of the present invention.

【図3】本発明第二実施例における処理動作の流れを示
すフローチャート。
FIG. 3 is a flowchart showing the flow of processing operations in the second embodiment of the present invention.

【図4】本発明第一および第二実施例に係わる変更前の
ソースファイルの内容を示す図。
FIG. 4 is a diagram showing the contents of a source file before modification according to the first and second embodiments of the present invention.

【図5】本発明第一および第二実施例に係わる変更後の
ソースファイルの内容を示す図。
FIG. 5 is a diagram showing the contents of a modified source file according to the first and second embodiments of the present invention.

【図6】従来例における処理動作の流れを示すフローチ
ャート。
FIG. 6 is a flowchart showing the flow of processing operations in a conventional example.

【符号の説明】[Explanation of symbols]

101 言語処理プログラム開発装置 102 修正前のソースファイル 103 修正後のソースファイル 104 ソースプログラム情報入力部 105 比較部 106 構文解析部 107 オブジェクト情報生成部 108 既存のオブジェクトファイル 109 オブジェクト情報入力部 110 置換部 111 オブジェクトファイル出力部 112 オブジェクトファイル 101 Language Processing Program Development Device 102 Source File Before Modification 103 Source File After Modification 104 Source Program Information Input Unit 105 Comparison Unit 106 Syntax Analysis Unit 107 Object Information Generation Unit 108 Existing Object File 109 Object Information Input Unit 110 Replacement Unit 111 Object file output part 112 Object file

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 ソースファイルからソースプログラム情
報を入力するソースプログラム情報入力部と、 入力されたソースプログラム情報を解析しオブジェクト
情報を生成するオブジェクト情報生成部を有する構文解
析部と、 生成されたオブジェクト情報をオブジェクトファイルに
出力するオブジェクトファイル出力部とを備えた言語処
理プログラム処理装置において、 前記ソースプログラム情報入力部に、現在のソースプロ
グラム情報と前版のソースプログラム情報とを比較し、
変更のあったセグメント部分を検出して前記構文解析部
に送出する比較部を含み、 オブジェクトファイルから既存のオブジェクト情報を入
力するとともに、前記オブジェクト情報生成部が生成し
たオブジェクト情報を入力するオブジェクト情報入力部
を備え、 このオブジェクト情報入力部に、入力した既存のオブジ
ェクト情報のうちの前記オブジェクト情報生成部が生成
したオブジェクト情報に対応する部分と、生成したオブ
ジェクト情報とを連続領域としてアセンブルする最小領
域であるセグメント単位で置換する置換部を含むことを
特徴とする言語処理プログラム処理装置。
1. A source program information input unit for inputting source program information from a source file, a syntax analysis unit having an object information generation unit for analyzing the input source program information and generating object information, and a generated object. In a language processing program processing device having an object file output unit for outputting information to an object file, the source program information input unit compares the current source program information with the previous version of the source program information,
An object information input that includes a comparison unit that detects a changed segment part and sends it to the syntax analysis unit, inputs existing object information from an object file, and inputs the object information generated by the object information generation unit A part corresponding to the object information generated by the object information generation part of the existing object information input and a minimum area for assembling the generated object information as a continuous area. A language processing program processing device including a replacement unit for replacing a certain segment unit.
JP12386392A 1992-05-15 1992-05-15 Language processing program processor Pending JPH05324302A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12386392A JPH05324302A (en) 1992-05-15 1992-05-15 Language processing program processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12386392A JPH05324302A (en) 1992-05-15 1992-05-15 Language processing program processor

Publications (1)

Publication Number Publication Date
JPH05324302A true JPH05324302A (en) 1993-12-07

Family

ID=14871252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12386392A Pending JPH05324302A (en) 1992-05-15 1992-05-15 Language processing program processor

Country Status (1)

Country Link
JP (1) JPH05324302A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009230272A (en) * 2008-03-19 2009-10-08 Advantest Corp Testing system and back annotation method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009230272A (en) * 2008-03-19 2009-10-08 Advantest Corp Testing system and back annotation method

Similar Documents

Publication Publication Date Title
US20040010780A1 (en) Method and apparatus for approximate generation of source code cross-reference information
JPH05324302A (en) Language processing program processor
JP3196675B2 (en) Language processing method
JPH0580999A (en) Processing system for language processing program
JP2004192139A (en) Debug device, debug method and recording medium
JPH0667871A (en) Automatic program updating system
JP3903514B2 (en) Optimized compiler for undefined variable detection
JPH05204699A (en) Identifier searching system at debugging
JPH05197561A (en) Compilation system
JPH07121379A (en) Plural languages mixing compiler
JPH11154093A (en) Program compiler and storage medium recording compiler program
JPH02100732A (en) Program grammar checking system
JPH0749788A (en) Compile processing system
JP3063297B2 (en) Language processing program creation device
JP3584204B2 (en) Automatic source program converter
JP3226172B2 (en) Inline expansion system
JP2000242504A (en) Compiler device
JP2001043078A (en) Program improvement supporting device
JP2001125793A (en) Compiler system, compile method and recording medium
JPH1011276A (en) Program transferring method
JPH02253443A (en) Program generating method
JP2004133827A (en) Core analysis system
JPH04273328A (en) Generation system for cross-reference list
JPH07110758A (en) Compiling/linking system for program
JPS6170641A (en) Automatic generating method of test program