JPH02244341A - 実行サブルーチンデバツグ情報出力トレース方式 - Google Patents

実行サブルーチンデバツグ情報出力トレース方式

Info

Publication number
JPH02244341A
JPH02244341A JP1066937A JP6693789A JPH02244341A JP H02244341 A JPH02244341 A JP H02244341A JP 1066937 A JP1066937 A JP 1066937A JP 6693789 A JP6693789 A JP 6693789A JP H02244341 A JPH02244341 A JP H02244341A
Authority
JP
Japan
Prior art keywords
subroutine
debugging
debug
trace
statement
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
JP1066937A
Other languages
English (en)
Inventor
Susumu Umatani
馬谷 晋
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 JP1066937A priority Critical patent/JPH02244341A/ja
Publication of JPH02244341A publication Critical patent/JPH02244341A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明線、サブルーチン名と引数とを表示すルフログラ
ムを生成する実行サブルーチンデバッグ情報出カドレー
ス方式に関する。
(従来の技術) 従来から、プログラムをデバッグするには、なんらかの
形でデバッグ情報を収集しているのは公知である。デバ
ッグ情報を収集するには。
下記の2つの方式がある。
第1は、ソースプログラム中にデバッグ情報を収集する
文を挿入するものである。第2は、ソフトウェアデバッ
ガでブレークポイントを設定し、プログラム実行途中に
実行を停止させてデバッグ情報を収集するものである。
(発明が解決しようとする課題) 上述し次従来のデバッグトレース情報収束方式において
、上記第1の方式ではプログラム中に人手によりロジッ
クを挿入する必要がある九め、非常に操作が面倒であり
、且つ、ロジックの誤りを犯しやすいという欠点がある
。いっぼう、上記第2の方式では実行中に何度も実行動
作を停止させるようにソフトウェアデバッガに対して指
示させる必要があるので、操作が面倒であると云う欠点
がある。
本発明の目的は、コンパイラの翻訳処理の一部において
ソースプログラムを読込み、読込まれ次ソースプログラ
ム中にサブルーチンコールがあるか否かを認識しておき
、コンパイル時のデバッグオプションによりデバッグト
レース文の出力可否t−n断し、デバッグトレース出力
時にはサブルーチンのサブルーチン名、およびその引数
値を書式に従つ良形式で表示し、実行文を生成し、コン
パイラの翻訳処理を行うことによって上記欠点全除去し
、操作t−m易化できるように構成し次実行サブルーチ
ンデバッグ情報出カドレース方式を提供することにある
(課題を解決するための手段) 本発明による実行サブルーチンデパック情報量カドレー
ス方式はソース読込み手段と、サブルーチンコール認識
手段と、デバッグトレース生成判断手段と、デバッグト
レース生成手段と。
翻訳処理手段とを具備して構成し念ものである。
ソース読込み手段は、コンバイ2の翻訳処理の一部でソ
ースプログラムの文を読込む念めのものである。
サブルーチンコール認識手段は、上記読込まれ九ソース
プログラム中にサブルーチンコールが存在するか否かを
認識するためのものである。
デバッグトレース生成判断手段は、コンパイル時のデバ
ッグオプションによりデパックトレース文の出力の可否
を判断するためのものである。
デバッグトレース生成手段に、デバッグトレース出力時
にはサブルーチンのサブルーチン名およびサブルーチン
の引数値を表示する九め、実行文を生成する九めのもの
である。
翻訳処理手段は、コンパイラの翻訳処理を行う几めのも
のである。
(実 施 例) 次に、本発明について図面を参照して説明する。
第1図は1本発明による実行サブルーチンデバッグ情報
出カドレース方式の一実施例を示すブロック図である。
第1図は、デバッグ情報出力の一実施例を示すブロック
図であり、ここでの処理の流れはコンパイラの処理の一
部として組込まれている。
第1図において、1はソース読込み手段、2はサブルー
チンコールiil!識手段、3はデバッグトレース生成
判定手段、4はデバッグトレース生成手段、5は翻訳処
理手段である。
まず、ソース読込み手段1により、ソースプログラムの
文を一行づつ読込む。続いて、サブルーチンコール認識
手段2では、ソース読込み手段1により読込まれ構文に
対して構文解析を行い、その文の中にサブルーチンコー
ルカ6 ルか否かを認識する。
ソース読込み手段1により読込まれ九ソースプログラム
中にサブルーチンコールがあった場合、デバッグトレー
ス生成判定手段3ではサブルーチンデバッグトレース文
を生成するか否かを判定する。この判定の指示は、コン
パイル時ノテバッグオプションの有無による。デバッグ
トレース生成判定手段3によってデバッグ文を生成する
指示があった場合、デバッグトレース生成手段4は当該
サブルーチンに対してデバッグフラックと、関数名と、
引数名と、サブルーチンの書式に従つ九実行時値を表示
させるためのプリント文とを当該サブルーチンの機械語
命令の前に生成する。
翻訳処理手段5は、通常のコンパイル処理である。
第2図は、ソースプログラムとサブルーチンデバッグト
レース文とが埋込まれ友サンプルプログラムであり、C
言語で記述し次ものである。
理解を容易にするために、第2図によりサンプルプログ
ラムの実例を説明する。
第2図における入力ソースプログラムの実例では0言語
記述によっている。変更プログラムはコンパイラにより
デバッグオプションを指定した後のものである。
該当処理は、サンプルプログラム中の8行目の行番号に
相当する。すなわち、Put2 (c sb);の文が
サブルーチンコールにあ九る。
0言語で社、これを関数コールと云う。そこで、コンパ
イル時の処理により if(debug) Pr1nt f (’Put2−
 (cm%8 、 b−厄)■   ■    ■  
  ■   ■\n”* Csb) : という文を生成する。
■のi f (debug ) Bデバッグフラッグが
オンのときに、以降の文が実行されることを示している
この種のdebugは、変換後の第1行目に外部宣言文
として実数形の変数で生成される。この文の目的は、当
該サンプルプログラムの実行時に設定されるので、当該
デバッグ情報の出力可否を選択できることにある。例え
ば、ソフトウェアデバッガと併用して使用すれば1部分
的なデバッグ情報の収集が可能となる。
■のPrfnt(・・・は、0記述で1・・・”の内容
を表示すると云う意味をもつ。■のPu12m(c−は
、コンパイラが宣言され次間数名と、変数名とを表示で
きるように埋込んだものである。
■および■は、変数名Cとbとの書式(Cμ文字列、b
は実数)t−満足する形式で表示できるように、コンパ
イラにより生成されたものである。サンプルプログラム
では翻訳処理手段5によりPut2の文に対厄する機械
Rが生成される。
(発明の効果) 以上説明したように本発明は、コンパイル時(7)f/
(ツ/オプシ目ンを活用することにより、デバッグトレ
ース情報全容鳥に収集することができると云う効果があ
る。
【図面の簡単な説明】
第1図は1本発明による実行サブルーチンデバッグ情報
量カドレース方式の一実施例全示すブロック図である。 第2図はソースプログラム例を示すサンプログラム図で
ある。 l・・・ソース読込み手段 2・・φサブルーチンコール認識手段 3・・・デバッグトレース生成判定手段4・・・デバッ
グトレース化成手段 5・・・翻訳処理手段 オス

Claims (1)

    【特許請求の範囲】
  1. コンパイラの翻訳処理の一部でソースプログラムの文を
    読込むためのソース読込み手段と、前記読込まれたソー
    スプログラム中にサブルーチンコールが存在するか否か
    を認識するためのサブルーチンコール認識手段と、コン
    パイル時のデバッグオプションによりデバッグトレース
    文の出力の可否を判断するためのデバッグトレース生成
    判断手段と、デバッグトレース出力時には前記サブルー
    チンのサブルーチン名および前記サブルーチンの引数値
    を表示するために実行文を生成するためのデバッグトレ
    ース生成手段と、前記コンパイラの翻訳処理を行うため
    の翻訳処理手段とを具備して構成したことを特徴とする
    実行サブルーチンデバッグ情報出力トレース方式。
JP1066937A 1989-03-17 1989-03-17 実行サブルーチンデバツグ情報出力トレース方式 Pending JPH02244341A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1066937A JPH02244341A (ja) 1989-03-17 1989-03-17 実行サブルーチンデバツグ情報出力トレース方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1066937A JPH02244341A (ja) 1989-03-17 1989-03-17 実行サブルーチンデバツグ情報出力トレース方式

Publications (1)

Publication Number Publication Date
JPH02244341A true JPH02244341A (ja) 1990-09-28

Family

ID=13330414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1066937A Pending JPH02244341A (ja) 1989-03-17 1989-03-17 実行サブルーチンデバツグ情報出力トレース方式

Country Status (1)

Country Link
JP (1) JPH02244341A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04307630A (ja) * 1991-04-04 1992-10-29 Nippon Denki Micom Technol Kk 簡易デバック・オプション付きコンパイラ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04307630A (ja) * 1991-04-04 1992-10-29 Nippon Denki Micom Technol Kk 簡易デバック・オプション付きコンパイラ

Similar Documents

Publication Publication Date Title
Bouchhima et al. Automatic instrumentation of embedded software for high level hardware/software co-simulation
US5132972A (en) Assembly language programming potential error detection scheme sensing apparent inconsistency with a previous operation
Rask et al. Visual studio code vdm support
JPH02244341A (ja) 実行サブルーチンデバツグ情報出力トレース方式
JPS62113244A (ja) プログラムテスト装置
JP4055197B2 (ja) プログラムに含まれる手続きの解析装置
JPH10187461A (ja) 言語処理方式
JP2000353112A (ja) 中間言語レベルのデバッグ方法及びシステム
Cox et al. Advanced programming aids in PROGRAPH
JP2001147832A (ja) ソースプログラム対応表示方式
van den Brand et al. TIDE—A Generic Debugging Framework
JPH08212105A (ja) プログラム管理装置
JPH0272407A (ja) ラダー・プログラム変換装置
JPH0353334A (ja) 言語処理プログラムのデバッグ情報出力処理方式
JPH04209029A (ja) 並列処理プログラム翻訳処理装置
JPS6365542A (ja) デバツグ方式
JPH06231003A (ja) 実行可能ファイルのデバッガ
JPH04307630A (ja) 簡易デバック・オプション付きコンパイラ
JPH05250221A (ja) シミュレータ実行方式
JPH0239331A (ja) デバッグ文生成装置
JPH05108372A (ja) コンパイラ最適化処理内容の出力方式
JPH0350641A (ja) 言語処理プログラムのデバッグ情報出力方式
JPH0588939A (ja) 副プログラム単体テスト方式
JPH04250530A (ja) プログラム変換/翻訳装置
JPH02130636A (ja) コンパイラ並びにプログラム開発支援システム