JPS63298451A - デバグ用目的プログラム生成方式 - Google Patents

デバグ用目的プログラム生成方式

Info

Publication number
JPS63298451A
JPS63298451A JP62134674A JP13467487A JPS63298451A JP S63298451 A JPS63298451 A JP S63298451A JP 62134674 A JP62134674 A JP 62134674A JP 13467487 A JP13467487 A JP 13467487A JP S63298451 A JPS63298451 A JP S63298451A
Authority
JP
Japan
Prior art keywords
intermediate language
debugging
library
language information
compiler
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
JP62134674A
Other languages
English (en)
Inventor
Makoto Unoki
鵜木 誠
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 JP62134674A priority Critical patent/JPS63298451A/ja
Publication of JPS63298451A publication Critical patent/JPS63298451A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、プログラム言語の翻訳機構が有する目的プロ
グラム生成方式に関する。
〔従来の技術〕
従来、ソフトウェア製品のテスト・デバグ段階において
は、プログラムの誤りの原因を解析するために、必要な
情報を編集出力するデバグ用手続き呼出し命令をエディ
タ等でソースプログラム中の分岐点その他必要とする箇
所にデバグ行として埋め込んでいる。通常、コンパイル
時のオプションにデバグモードを指定してコンパイラを
起動し、コンパイラはデバグ行も翻訳対象としてソース
プログラムを入力し、翻訳処理を行ないデバグ用目的プ
ログラムを生成していた。
〔発明が解決しようとする問題点〕
上述した従来の方式は、既に翻訳流のソースプログラム
行をも対象にして、最初から構文解析。
意味解析処理等を必要とするため、無駄な翻訳処理時間
を必要とする欠点がある。
(問題点を解決するための手段) 本発明のデバグ用目的プログラム生成方式は、コンパイ
ラの前半部が翻訳した結果得られた中間MWi情報をラ
イブラリに保存する保存手段と、前記保存手段によって
ライブラリに保持されている中間言語情報を入力する入
力手段と、デバグ用情報を入力および解析し中間言語情
報を直接更新する更新手段と、 デバグ用目的プログラムを生成するために、コンパイラ
の後半部を起動する後半部起動手段と、を有している。
〔作用〕
翻訳して得られた中間@語をライブラリに保存しておき
、デバグ用として追加する命令を直接ライブラリ上で更
新することにより、再度ソースプログラムを入力して構
文解析、意味解析をする必要がなくなる。
〔実施例〕
次に、本発明の実施例について図面を参照して説明する
第1図は本発明のデバグ用目的プログラム生成方式の一
実施例の全体構成図、第2図は中間言語情報を保存する
処理を示す流れ図、第3図は中間言語情報ファイル8か
らノード情報を読出す処理を示す流れ図、第4図は中間
言語情報ファイル8を直接更新し、目的プログラム9を
生成する処理を示す流れ図、第5図は、コンパイラ後半
部6を起動して目的プログラム9を生成する処理を示す
流れ図である。
本実施例は、コンパイラの前半部5の処理が正常終了し
た場合、起動され、前半部5が翻訳した結果得られた中
間言語情報を中間言語ファイル8に保存する保存手段1
と、保存手段1によって中間言語情報ファイル8に保存
されている中間言語情報を入力する入力手段2と、デバ
グ用情報7を入力および解析し中間言語情報を直接更新
する更新手段3と、デバグ用目的プログラムを生成する
ためにコンパイラの後半部6を起動する後半部起動手段
4とからなっている。なお、中間言語情報ファイル8中
の「o」は更新手段3によって直接更新された情報を示
す。
次に、このように構成された目的ブ日グラム生成方式の
動作について第2図〜第5図により説明する。
コンパイラが起動され、構文解析および意味解析上誤り
が発生しない場合、すなわちコンパイラの前半部5の処
理が正常終了し々場合、保存手段1が起動される。保存
手段1は、コンパイラの前半部5が作成した中間言語を
中間言語情報ファイル8として登録する(ステップ10
)。この時、中間吉8R情報ファイル8は保存ファイル
として扱われる。次に、ソースプログラムのデバグを目
的としてコンパイラが起動されると、更新手段3は既に
保存されている中間言語情報を中間言語情報ファイル8
から直接入力および更新し、デバグ用目的プログラム9
を生成する。すなわち、更新手段3は、まずデバグ用情
報7を入力し、デバグ用手続き名および埋め込み箇所を
取得し、入力手段2を呼び出す(ステップ13)。入力
手段2は、埋め込み箇所に相当するノード情報を中間言
語情報ファイル8から取り出し、主記憶上にノード情報
12としてロードする(ステップ14)。次に、ステッ
プ13で得られたデバグ用手続き名を基にデバグ用手続
き呼出し命令の中間言語を作成する(ステップ15)。
次に、ステップ14で得られたノード情報12に、ステ
ップ15で作成した中間言語をノード情報として追加す
る(ステップ16)。さらに、更新されたノード情報1
2を中間言語情報ファイル8に格納する(ステップ17
)。最後に、後半部起動手段4を呼出しくステップ18
)、後半部起動手段4は、コンパイラの後半部6を起動
して更新された中間言語情報ファイル8を入力すること
によりデバグ用手続き呼出し命令の埋め込まれた目的プ
ログラム9を生成する(ステップ19)。
このようにして、一度ソース7プログラムに対応する中
間言語情報ファイル8を保存することにより、デバグ用
目的プログラムを高速に生成することが回部となる。
〔発明の効果〕
以上説明IJたように本発明は、一度翻訳して得られた
中間8mをライブラリ保存しておき、デバグ用として追
加する命令を直接ライブラリ上で更新することにより、
再度ソースプログラムを入力して構文解析、意味解析す
る処理時間が軽減され必要とする目的70グラムを高速
に生成できる効果がある。
【図面の簡単な説明】
第1図は本発明のデバグ用目的ブOグラム生成方式の一
実施例の全体構成図、第2図は中間言語情報を保存する
処理を示す流れ図、第3図は中間言語情報ファイル8か
らノード情報を読出す処理を示す流れ図、第4図は中間
言語情報ファイル8を直接更新し、目的プログラム9を
生成する処理を示す流れ図、第5図は、コンパイラ後半
部6を起動して目的プログラム9を生成する処理を示す
流れ図である。 1・・・保存手段、 2・・・入力手段、 3・・・更新手段、 4・・・後半部起動手段、 5・・・コンパイラの前半部、 6・・・コンパイラの後半部、 7・・・デバグ用情報、 8・・・中間言語情報ファイル、 9・・・目的プログラム。 弔り図 第3図 目白97aoプラム

Claims (1)

  1. 【特許請求の範囲】 コンパイラの前半部が翻訳した結果得られた中間言語情
    報をライブラリに保存する保存手段と、前記保存手段に
    よってライブラリに保持されている中間言語情報を入力
    する入力手段と、 デバグ用情報を入力および解析し中間言語情報を直接更
    新する更新手段と、 デバグ用目的プログラムを生成するために、コンパイラ
    の後半部を起動する後半部起動手段と、を有するデバグ
    用目的プログラム生成方式。
JP62134674A 1987-05-28 1987-05-28 デバグ用目的プログラム生成方式 Pending JPS63298451A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62134674A JPS63298451A (ja) 1987-05-28 1987-05-28 デバグ用目的プログラム生成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62134674A JPS63298451A (ja) 1987-05-28 1987-05-28 デバグ用目的プログラム生成方式

Publications (1)

Publication Number Publication Date
JPS63298451A true JPS63298451A (ja) 1988-12-06

Family

ID=15133912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62134674A Pending JPS63298451A (ja) 1987-05-28 1987-05-28 デバグ用目的プログラム生成方式

Country Status (1)

Country Link
JP (1) JPS63298451A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02213946A (ja) * 1989-02-14 1990-08-27 Mitsubishi Electric Corp プログラム翻訳方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02213946A (ja) * 1989-02-14 1990-08-27 Mitsubishi Electric Corp プログラム翻訳方式

Similar Documents

Publication Publication Date Title
JP2811990B2 (ja) プログラム処理装置及びプログラム処理方法
JPS63298451A (ja) デバグ用目的プログラム生成方式
JPH01277934A (ja) パラメータリスト参照方法の切換え方式
JPH09282174A (ja) プログラム実行方法
JP3372387B2 (ja) プログラム検査方法
JP2001125793A (ja) コンパイラシステム及びコンパイル方法並びに記録媒体
JPS61147336A (ja) ロ−ドモジユ−ルの世代管理方式
JPH0573330A (ja) 構文解析処理方式
JP3226172B2 (ja) インライン展開システム
JPH09305411A (ja) コンパイル型プログラムのプログラム実行装置
JPH0333936A (ja) 入出力文を含むソースプログラムのデバッグ支援コンパイル方式
JPH0319041A (ja) 制御項目自動管理方式
JPH06119203A (ja) デバック行削除装置
JPH08194624A (ja) 実行形式プログラム作成方法
JPH0279127A (ja) フォートラン・コンパイル処理方式
JPH03144830A (ja) 並列処理方式
JPH0358232A (ja) プリプロセッサ呼び出し方式
JPH0566949A (ja) 関数定義コンパイルドコード呼出し方式
JPH03176744A (ja) ソフトウェアテスト方式
JPH0778096A (ja) 単体プログラムテスト方式
JPH0371229A (ja) プログラム制御装置
JPH05204699A (ja) デバッグ時識別子探索方式
JPH0283634A (ja) プログラムデバッグ方式
JPH1083328A (ja) 単体テスト用疑似入出力実現方式
JPS63276128A (ja) ファイル入力による手続き名の判定処理方式