JP3165105B2 - Program tracer, compiler and linker - Google Patents

Program tracer, compiler and linker

Info

Publication number
JP3165105B2
JP3165105B2 JP11691198A JP11691198A JP3165105B2 JP 3165105 B2 JP3165105 B2 JP 3165105B2 JP 11691198 A JP11691198 A JP 11691198A JP 11691198 A JP11691198 A JP 11691198A JP 3165105 B2 JP3165105 B2 JP 3165105B2
Authority
JP
Japan
Prior art keywords
program
address
storage unit
function
stored
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
JP11691198A
Other languages
Japanese (ja)
Other versions
JPH11306045A (en
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 JP11691198A priority Critical patent/JP3165105B2/en
Publication of JPH11306045A publication Critical patent/JPH11306045A/en
Application granted granted Critical
Publication of JP3165105B2 publication Critical patent/JP3165105B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、プログラムのアド
レス参照軌跡をトレースしてプログラムの動作を解析す
るプログラムのトレーサに関し、特に前記の参照アドレ
スを、プログラムの中で参照される関数ルーティンの入
口及び出口のアドレス情報に限定してトレースするプロ
グラムのトレーサ、及び、その参照アドレスを前記プロ
グラムのソースプログラムをコンパイルするときに、ト
レース・アドレス情報テーブルとして予め生成し、前記
プログラムに付加しておくようにしたコンパイラ及び前
記プログラムをロード・モジュールにリンクするリンカ
ーに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a tracer of a program for tracing an address reference trajectory of a program to analyze the operation of the program. A tracer for a program that traces only to the address information of an exit, and a reference address thereof is generated in advance as a trace address information table when compiling a source program of the program, and is added to the program. And a linker for linking the program to a load module.

【0002】[0002]

【従来の技術】従来のこの種のプログラムの動作を解析
するためのものとしては、例えば特開平3−10339
号公報にあるように、「関数情報を基にブレークポイン
ト管理テーブルを作成し」て、関数ステップ機能を実現
するインサーキットエミュレータでは、関数の「戻り番
地にブレークポイントをセット」するようにしてプログ
ラムのデバッグをするようにしたものや、特開昭59−
184955号公報にあるように、「リターン命令を検
出する手段」を設けて、リターン命令が実行された時点
でプログラムを一旦停止するようにしてプログラムをデ
バッグするようにしたもの、あるいは、特開平6−10
3109号公報にあるように、「サブルーチンからの戻
り先番地を」、「リターンアドレスレジスタ(RAH)
に取得し」、「命令ポインタ(IP)」の「戻り先番地
と比較回路で比較し」、「ブレークを発生する」ように
したデバッグ装置、また、特開平5−173834号公
報にあるように、「直前にプログラム・フェッチされた
アドレスの関数のアドレス領域がいま読み込まれたデー
タのアドレスと異なっているかを判定」して、「異なっ
ていればリターンと判断する」ようにした「関数コール
およびリターンの検出方式」などによるプログラムの動
作解析手段があった。
2. Description of the Related Art For analyzing the operation of a conventional program of this kind, for example, Japanese Patent Laid-Open Publication No.
In the in-circuit emulator that realizes the function step function by “creating a breakpoint management table based on function information” and setting a breakpoint at the return address of the function, the program And Japanese Patent Application Laid-Open No.
As disclosed in Japanese Patent Application Laid-Open No. 184955, a "means for detecting a return instruction" is provided, and the program is temporarily stopped when the return instruction is executed to debug the program. -10
As described in Japanese Patent No. 3109, "return address from subroutine", "return address register (RAH)
As described in Japanese Unexamined Patent Publication No. Hei 5-173834. Also, a debugging device is configured to "compare with a return address of an instruction pointer (IP) by a comparison circuit" and "generate a break". "It is determined whether the address area of the function at the address immediately before the program fetch is different from the address of the data just read", and "if it is different, it is determined that a return is made". There is a means for analyzing the operation of a program by a "return detection method".

【0003】[0003]

【発明が解決しようとする課題】これらの従来のプログ
ラムの動作解析手段においては、いずれも、動作解析の
対象プログラムの実行を一旦停止するようにしていたの
で、プログラム全体の動作を解析するためには、相当の
回数だけプログラムの実行が一旦停止することになり、
リアルタイムでのプログラムの動作解析ができにくいと
いう欠点があった。また、従来のプログラムの動作解析
手段では、いずれも関数ルーティンの戻り先アドレスを
ブレークポイントとしているので、関数ルーティン中で
分岐条件により関数処理の内容が変わるような場合に
は、どの分岐条件の関数処理が実行されたのかを簡単に
判別することができないという欠点があった。さらに、
関数ルーティン中で同じ関数ルーティンを再帰的にコー
ルする様な場合には、トレース処理が煩雑になるという
欠点があった。
In all of these conventional program operation analysis means, the execution of the program to be subjected to the operation analysis is temporarily stopped, so that the operation of the entire program is analyzed. Means that the execution of the program temporarily stops for a considerable number of times,
There is a disadvantage that it is difficult to analyze the operation of the program in real time. In addition, in the conventional program operation analysis means, the return address of the function routine is used as a breakpoint. Therefore, when the content of the function processing changes depending on the branch condition in the function routine, the function of any branch condition is determined. There was a disadvantage that it was not possible to easily determine whether the process was performed. further,
When the same function routine is recursively called in the function routine, there is a disadvantage that the tracing process becomes complicated.

【0004】[0004]

【課題を解決するための手段】前記の課題を解決するた
め本発明のプログラムのトレーサ装置(以下、トレーサ
と略称する)は、プログラムのアドレス参照軌跡を第1
の記憶部に記録して前記プログラムの動作を解析する
きに、予め所要のアドレス情報を第2の記憶部に格納し
ておき、この第2の記憶部に格納したアドレスに限って
のみアドレス参照軌跡を前記第1の記憶部に記録するよ
うにしたプログラムのトレーサ装置であって、前記第2
の記憶部に格納するアドレス情報、前記プログラムの
中で参照される関数ルーティンのエントリ・アドレス・
データ及び前記関数ルーティン中のリターン命令の格納
アドレス・データとするようにしたことを特徴とする。
SUMMARY OF THE INVENTION In order to solve the above-mentioned problem, a program tracer device (hereinafter referred to as a tracer device) of the present invention is provided.
Is abbreviated as the first address reference trajectory of the program.
When recording to the storage unit for analyzing the operation of the program
In this case , required address information is stored in the second storage unit in advance , and the address reference trajectory is recorded in the first storage unit only for addresses stored in the second storage unit. A program tracer device , wherein the second
Of the address information stored in the storage unit, the entry address of the function routines referenced in the program
The present invention is characterized in that it is used as data and storage address data of a return instruction in the function routine.

【0005】[0005]

【0006】また、当該プログラムのソースプログラム
をコンパイル及びリンクする装置において、前記のプロ
グラムのトレーサの第2の記憶部に格納するアドレス情
報を、トレース・アドレス情報テーブルとして生成し、
前記の当該プログラムに付加するようにしたコンパイラ
及びリンカー、前記トレース・アドレス情報テーブル
のアドレス情報、前記の当該プログラムの中で参照さ
れる関数ルーティンのエントリ・アドレス・データ及び
前記関数ルーティン中のリターン命令の格納アドレス・
データとするようにしたことを特徴とするコンパイラ及
びリンカーの処理方法とした。
In a device for compiling and linking a source program of the program, address information to be stored in a second storage unit of a tracer of the program is generated as a trace address information table,
Wherein the the compiler and linker, as added to the program of the trace address information table in the address information, the referenced in the entry address data and said function routines function routines in the of the program Return instruction storage address
A processing method of a compiler and a linker characterized in that data is used.

【0007】[0007]

【0008】[0008]

【0009】また、前記のコンパイラ及びリンカーによ
り作成されたプログラムをトレースするとき、前記トレ
ース・アドレス情報テーブルのアドレス情報を前記第2
の記憶部に格納して、前記プログラムをトレースするよ
うにした。
When tracing a program created by the compiler and the linker, the address information of the trace address information table is stored in the second address.
And the program is traced.

【0010】また、前記のプログラムのトレーサの処理
手順を記録媒体に記録して、情報処理装置で利用できる
ようにした。
[0010] Further, the processing procedure of the tracer of the program is recorded on a recording medium so that it can be used in an information processing apparatus.

【0011】また、前記のコンパイラ及びリンカーの処
理手順を記録媒体に記録して、情報処理装置で利用でき
るようにした。
Further, the processing procedure of the compiler and the linker is recorded on a recording medium, and can be used in an information processing apparatus.

【0012】[0012]

【発明の実施の形態】本発明の実施の形態について、以
下に図面を参照して説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0013】図3は、本発明のプログラムのトレーサ
置(以下トレーサと略称する)によるトレース処理動
作、及び、コンパイラ及びリンカーを含めた全体の処理
の流れを示した図である。図3において、ソースファイ
ル群100には、C言語やアセンブラ言語で記述された
複数の関数ルーティンを含んでいる。コンパイラ12は
このソースファイル群を読み込んで、オブジェクトコー
ドを生成し、関数ルーティンのエントリとその関数ルー
ティン中のリターン命令の箇所を抽出し、オブジェクト
・ファイル群120を出力する。リンカー31は、コン
パイラ12によって出力されたオブジェクト・ファイル
群120を読み込んで、実行形式プログラム・ファイル
310を出力する。このとき、この実行形式プログラム
・ファイルには、関数エントリのアドレス情報を格納し
た関数エントリ・アドレス・テーブル、および、関数ル
ーティン中のリターン命令の格納アドレス情報を格納し
た関数リターン・アドレス・テーブルを付加する。トレ
ーサ32は、この実行形式プログラム・ファイル310
を読み込み、前記の関数エントリ・アドレス・テーブル
及び関数リターン・アドレス・テーブルから読み込んだ
トレース・アドレス情報に限定して、プログラム実行時
のアドレス参照軌跡及び参照時刻などを記録するように
して、トレース・ファイル320を生成するように動作
する。このようにして得られたトレース・ファイルか
ら、プログラム動作の解析33を行うようにしている。
FIG. 3 shows a tracer device of the program of the present invention.
Trace processing operation by the device (hereinafter abbreviated as tracer)
And the whole process including the compiler and linker
It is a figure showing the flow of. In FIG. 3, the source file group 100 includes a plurality of function routines described in C language or assembler language. The compiler 12 reads the source file group, generates an object code, extracts the entry of the function routine and the location of the return instruction in the function routine, and outputs the object file group 120. The linker 31 reads the object file group 120 output by the compiler 12 and outputs an executable program file 310. At this time, a function entry address table storing the address information of the function entry and a function return address table storing the storage address information of the return instruction in the function routine are added to the executable program file. I do. The tracer 32 executes this executable program file 310
And the address reference locus and the reference time at the time of executing the program are limited to the trace address information read from the function entry address table and the function return address table. operable to generate a file 320
I do . The analysis 33 of the program operation is performed from the trace file thus obtained.

【0014】図1は、本発明の第1の実施の形態のコン
パイラ12の構成を示す図である。また、図4はその処
理内容を示す図である。図1及び図4に示すように、コ
ンパイラ12は、ソースファイル11を読み込み(処理
41)、関数リターン・アドレス・テーブルを作成する
かしないか選択するオプション指定を確認するオプショ
ン判定部13と、ソース・ファイルの関数エントリの箇
所を抽出し関数エントリ・アドレス・テーブルを生成す
る関数エントリ抽出部14(処理43及び処理44)
と、前記のオプション判定部の判定に従って、オプショ
ン指定が有効なときには、ソース・ファイルの関数リタ
ーン命令の箇所を抽出し関数リターン・アドレス・テー
ブルを生成し(処理45及び処理46)、オプション指
定が無効のときにはこの処理をしないようにする関数リ
ターン抽出部15と、オブジェクト・コードを生成し、
このオブジェクト・コードに前記関数エントリ・アドレ
ス・テーブル及び関数リターン・アドレス・テーブルを
付加したオブジェクト・ファイル17を出力するコード
生成部16(処理47)から構成される。
FIG. 1 is a diagram showing a configuration of a compiler 12 according to a first embodiment of the present invention. FIG. 4 is a diagram showing the processing contents. As shown in FIGS. 1 and 4, the compiler 12 reads the source file 11 (process 41), checks the option specification for selecting whether or not to create a function return address table, and the source determination unit 13. A function entry extraction unit 14 for extracting a function entry portion of a file and generating a function entry address table (processing 43 and processing 44)
When the option specification is valid according to the determination of the option determination unit, the location of the function return instruction in the source file is extracted and a function return address table is generated (steps 45 and 46). When the function is invalid, a function return extracting unit 15 for preventing this processing and an object code are generated,
A code generator 16 (process 47) for outputting an object file 17 in which the function entry address table and the function return address table are added to the object code.

【0015】図2は、前記のコンパイラにより出力され
るオブジェクト・ファイルの構成を示した図で、ファイ
ルヘッダ部21と、プログラム本体のオブジェクト・コ
ード部22と、関数エントリ・アドレス・テーブル部2
3と、関数リターン・アドレス・テーブル部24及びそ
の他の情報部25から構成されている。
FIG. 2 is a diagram showing the configuration of an object file output by the compiler. The file header section 21, the object code section 22 of the program body, and the function entry address table section 2
3 and a function return address table section 24 and other information sections 25.

【0016】図5は、本発明の第2の実施の形態のプロ
グラムのトレーサの動作の流れを示した図である。トレ
ーサはまず前述したコンパイラ及びリンカーにより作成
された実行形式プログラム・ファイルを読み込み(処理
51)、関数エントリ・アドレス・テーブル及び関数リ
ーターン・アドレス・テーブルからプログラム実行時の
アドレス参照軌跡のトレース条件を設定する(処理5
2、処理53)。その後、プログラムを実行し(処理5
4、処理55)、実行履歴情報を前記のトレース条件に
従って収集し、トレース・ファイルに記録する(処理5
6、処理57)。
FIG. 5 is a diagram showing a flow of the operation of the program tracer according to the second embodiment of the present invention. The tracer first reads the executable program file created by the compiler and linker described above (process 51), and sets the trace conditions of the address reference locus at the time of program execution from the function entry address table and the function return address table. Yes (Process 5
2, processing 53). After that, the program is executed (processing 5
4, process 55), collecting execution history information in accordance with the above-mentioned trace conditions and recording it in a trace file (process 5)
6, processing 57).

【0017】図6及び図7は、本発明のコンパイラによ
り処理される具体的なソース・ファイルの例と、そのソ
ース・ファイルから作成されるオブジェクト・ファイル
の構成の具体例を示した図である。
FIGS. 6 and 7 are diagrams showing a specific example of a source file processed by the compiler of the present invention and a specific example of the configuration of an object file created from the source file. .

【0018】図6に示すように、このソース・ファイル
は、sample.cと、subfile1.c及びs
ubfile2.cの3つの部分から構成されており、
これらをコンパイル及びリンクすることで、実行形式の
オブジェクト・ファイルsample.exeが生成さ
れる。
As shown in FIG. 6, this source file is sample. c and subfile1.c. c and s
ubfile2. c consists of three parts,
By compiling and linking these, an executable object file sample. exe is generated.

【0019】図6を参照すると、sample.cは2
つの関数mainとfunc1を有し、subfile
1.cは2つの関数func2及びfunc2_1を有
し、subfile2.cは2つの関数func3及び
func3_1を有している。ここで、func2に
は、2箇所にリターン命令があり、func3には3カ
所にリターン命令がある。
Referring to FIG. 6, sample. c is 2
Subfunction that has two functions main and func1
1. c has two functions, func2 and func2_1, and subfile2. c has two functions func3 and func3_1. Here, func2 has return instructions at two places, and func3 has return instructions at three places.

【0020】本発明の第1の実施の形態のコンパイラ
は、これらのソース・ファイルを読み込んで、コンパイ
ル処理して、sample.o、subfile1.o
及びsubfile2.oを生成し、リンカーによりこ
れらのファイルをリンク処理して、実行形式のオブジェ
クト・ファイルsample.exeを生成する。この
とき生成されるオブジェクト・ファイルsanple.
exeは、図7に示すように、プログラム・コード部に
加えて、関数エントリ・アドレス・テーブル部、関数リ
ターン・アドレス・テーブル部、及びその他の情報部か
ら構成するようにしている。
The compiler according to the first embodiment of the present invention reads these source files, compiles them, and sets sample. o, subfile1. o
And subfile2. o is generated, and these files are linked by a linker, so that an executable object file sample. exe is generated. The object file sample.
As shown in FIG. 7, the exe comprises a function entry address table section, a function return address table section, and other information sections in addition to the program code section.

【0021】また、図8は本発明の第3の実施の形態の
オブジェクト・ファイルの構成を示す図で、プログラム
中に、関数ルーティンと割り込み処理ルーティンが混在
しているような場合には、関数ルーティン中のリターン
命令の格納アドレス情報と、割り込み処理ルーティン中
のリターン命令の格納アドレス情報とを、別個の関数
ターン・アドレス・テーブル部として作成するようにし
ており、関数リターンと割り込みリターンとを区別する
ことも容易に可能になる。
FIG. 8 is a diagram showing the structure of an object file according to a third embodiment of the present invention. If a function routine and an interrupt processing routine are mixed in a program, the function and storing address information of a return instruction in the routine, and the storage address information of the return instruction in the interrupt processing routine, and so as to create a separate function Li <br/> turn address table section, and functions return It is also easy to distinguish between an interrupt return.

【0022】[0022]

【発明の効果】以上のように、本発明のプログラムのト
レーサ、コンパイラ及びリンカーは、プログラム中で参
照される関数ルーティンのエントリ・アドレス及び関数
ルーティン中のリターン命令の格納アドレスをトレース
・アドレスとして限定してトレースでき、また、プログ
ラムの実行を停止することなくトレースできるという効
果がある。
As described above, the program tracer, compiler and linker of the present invention limit the entry address of the function routine referred to in the program and the storage address of the return instruction in the function routine as the trace address. This has the effect that the program can be traced without stopping the execution of the program.

【0023】さらに、関数ルーティン実行中において、
分岐条件により関数処理の内容が異なる場合にも、どの
分岐条件の関数処理が実行されたのかを確実にトレース
できるという効果がある。
Further, during execution of the function routine,
Even when the contents of the function processing differ depending on the branch condition, there is an effect that it is possible to reliably trace which function of the branch condition was executed.

【0024】更に、関数ルーティンからのリターンと割
り込み処理ルーティンからのリターンを容易に区別でき
るという効果もある。
Further, there is an effect that the return from the function routine and the return from the interrupt processing routine can be easily distinguished.

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

【図1】本発明の第1の実施の形態のコンパイラの構成
を示す図。
FIG. 1 is a diagram showing a configuration of a compiler according to a first embodiment of the present invention.

【図2】本発明のコンパイラにより生成されるオブジェ
クト・ファイルの構成を示す図。
FIG. 2 is a diagram showing a configuration of an object file generated by a compiler according to the present invention.

【図3】本発明のプログラムのトレーサ、コンパイラ及
びリンカーの全体の処理手順を示す図。
FIG. 3 is a diagram showing an overall processing procedure of a tracer, a compiler, and a linker of the program of the present invention.

【図4】本発明の第1の実施の形態のコンパイラの処理
内容を示す図。
FIG. 4 is a view showing processing contents of a compiler according to the first embodiment of the present invention;

【図5】本発明の第2の実施の形態のトレーサの動作の
流れを示す図。
FIG. 5 is a diagram showing an operation flow of a tracer according to a second embodiment of the present invention.

【図6】本発明の第1の実施の形態のコンパイラの入力
である、ソース・ファイルの具体例を示す図。
FIG. 6 is a view showing a specific example of a source file which is an input of the compiler according to the first embodiment of the present invention.

【図7】本発明の第1の実施の形態のコンパイラの出力
である、オブジェクト・ファイルの構成の具体例を示す
図。
FIG. 7 is a view showing a specific example of a configuration of an object file, which is an output of the compiler according to the first embodiment of the present invention.

【図8】本発明の第3の実施の形態のオブジェクト・フ
ァイルの構成を示す図。
FIG. 8 is a diagram showing a configuration of an object file according to a third embodiment of the present invention.

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

11 ソース・ファイル 12 コンパイラ 13 オプション判定部 14 関数エントリ抽出部 15 関数リターン抽出部 16 コード生成部 17 オブジェクト・ファイル 21 ファイルヘッダ部 22 プログラム・コード部 23 関数エントリ・アドレス・テーブル部 24 関数リターン・アドレス・テーブル部 25 その他の情報部 31 リンカー 32 トレーサ 33 プログラム動作の解析部 41〜47 コンパイラの処理ステップ 51〜57 トレーサの処理ステップ DESCRIPTION OF SYMBOLS 11 Source file 12 Compiler 13 Option judgment part 14 Function entry extraction part 15 Function return extraction part 16 Code generation part 17 Object file 21 File header part 22 Program code part 23 Function entry address table part 24 Function return address Table section 25 Other information section 31 Linker 32 Tracer 33 Program operation analysis section 41-47 Compiler processing steps 51-57 Tracer processing steps

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭62−70945(JP,A) 特開 平4−30235(JP,A) 特開 平10−3411(JP,A) 特開 平8−161195(JP,A) 特開 平2−64748(JP,A) 特開 平2−310737(JP,A) 特開 平2−83749(JP,A) 特開 平3−10339(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 11/28 ────────────────────────────────────────────────── ─── Continuation of front page (56) References JP-A-62-70945 (JP, A) JP-A-4-30235 (JP, A) JP-A-10-3341 (JP, A) JP-A-8- JP-A-2-64748 (JP, A) JP-A-2-310737 (JP, A) JP-A-2-83749 (JP, A) JP-A-3-10339 (JP, A) (58) Field surveyed (Int. Cl. 7 , DB name) G06F 11/28

Claims (5)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 プログラムのアドレス参照軌跡を第1の
記憶部に記録して前記プログラムの動作を解析するトレ
ーサ装置が、予め所要のアドレス情報を第2の記憶部に
格納しておき、この第2の記憶部に格納したアドレスに
限ってのみアドレス参照軌跡を前記第1の記憶部に記録
するようにしたプログラムのトレーサ装置であって、前
記第2の記憶部に格納するアドレス情報、前記プログ
ラムの中で参照される関数ルーティンのエントリ・アド
レス・データ及び前記関数ルーティン中のリターン命令
の格納アドレス・データとするようにしたことを特徴と
するプログラムのトレーサ装置
1. A tracer device for recording an address reference trajectory of a program in a first storage unit and analyzing the operation of the program stores necessary address information in a second storage unit in advance, a address reference trajectory only only 2 of address stored in the storage unit a tracer device program be recorded in the first storage unit, the address information stored in the second storage unit, wherein tracer system program being characterized in that so as to store the address data of the return instruction in the entry address of the function routines referenced data and in the function routines in the program.
【請求項2】 当該プログラムのソースプログラムをコ
ンパイル及びリンクする装置において、請求項1記載の
プログラムのトレーサ装置の第2の記憶部に格納するア
ドレス情報を、トレース・アドレス情報テーブルとして
生成し、前記の当該プログラムに付加するようにしたコ
ンパイラ及びリンカー、前記トレース・アドレス情報
テーブルのアドレス情報、前記の当該プログラムの中
で参照される関数ルーティンのエントリ・アドレス・デ
ータ及び前記関数ルーティン中のリターン命令の格納ア
ドレス・データとするようにしたことを特徴とするコン
パイラ及びリンカーの処理方法
2. An apparatus for compiling and linking a source program of the program, wherein address information to be stored in a second storage unit of the program tracer apparatus according to claim 1 is generated as a trace address information table, The compiler and the linker, which are added to the program, store the address information of the trace address information table in the entry address data of the function routine referred to in the program and the return in the function routine. A processing method of a compiler and a linker , wherein the storage address data of an instruction is used .
【請求項3】 請求項2記載のコンパイラ及びリンカー
の処理方法により作成されたプログラムをトレースする
とき、前記トレース・アドレス情報テーブルのアドレス
情報を請求項1記載のプログラムのトレーサ装置の第2
の記憶部に格納して、前記プログラムをトレースするよ
うにした請求項1記載のプログラムのトレーサ装置
3. The compiler and linker according to claim 2,
2. The program tracer device according to claim 1, wherein when tracing the program created by the processing method , the address information of the trace address information table is used.
Stored in the storage unit of the tracer system according to claim 1, wherein the program so as to trace the program.
【請求項4】 請求項1または請求項3に記載のプログ
ラムのトレーサ装置において、予め所要のアドレス情報
を第2の記憶部に格納し、この第2の記憶部に格納した
アドレスに限ってのみアドレス参照軌跡を第1の記憶部
に記録するように制御する制御手順を、情報処理装置で
利用できるように格納した記録媒体。
4. The program tracer device according to claim 1, wherein the required address information is set in advance.
Is stored in the second storage unit, and stored in the second storage unit.
Only the address, the address reference locus is stored in the first storage unit.
A recording medium in which a control procedure for controlling recording in a computer is stored so as to be used by an information processing apparatus.
【請求項5】 請求項2記載のコンパイラ及びリンカー
の処理方法の手順を、情報処理装置で利用できるように
格納した記録媒体。
5. A recording medium in which the procedure of the processing method of the compiler and the linker according to claim 2 is stored so as to be used in an information processing apparatus.
JP11691198A 1998-04-27 1998-04-27 Program tracer, compiler and linker Expired - Fee Related JP3165105B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11691198A JP3165105B2 (en) 1998-04-27 1998-04-27 Program tracer, compiler and linker

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11691198A JP3165105B2 (en) 1998-04-27 1998-04-27 Program tracer, compiler and linker

Publications (2)

Publication Number Publication Date
JPH11306045A JPH11306045A (en) 1999-11-05
JP3165105B2 true JP3165105B2 (en) 2001-05-14

Family

ID=14698711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11691198A Expired - Fee Related JP3165105B2 (en) 1998-04-27 1998-04-27 Program tracer, compiler and linker

Country Status (1)

Country Link
JP (1) JP3165105B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4661854B2 (en) 2007-11-09 2011-03-30 株式会社デンソー Inspection system and program

Also Published As

Publication number Publication date
JPH11306045A (en) 1999-11-05

Similar Documents

Publication Publication Date Title
US5987250A (en) Transparent instrumentation for computer program behavior analysis
EP1130518B1 (en) Software analysis system having an apparatus for selectively collecting analysis data from a target system executing software instrumented with tag statements and method for use thereof
US6430741B1 (en) System and method for data coverage analysis of a computer program
US5142679A (en) Method and apparatus for collecting execution status data of structured program
US9274923B2 (en) System and method for stack crawl testing and caching
US5265254A (en) System of debugging software through use of code markers inserted into spaces in the source code during and after compilation
US20120317551A1 (en) Post-compile instrumentation of object code for generating execution trace data
US20110047529A1 (en) Method for automatic script generation for testing the validity of operational software of a system onboard an aircraft and device for implementing the same
JPH0689200A (en) Debug system and method
JP2004062858A (en) Compilation of application code in data processor
JP2006185211A (en) Program analysis system, test execution device, and analysis method and program thereof
US20100275185A1 (en) System and Method for High Performance Coverage Analysis
JPH0748182B2 (en) Program error detection method
JP3165105B2 (en) Program tracer, compiler and linker
JP2005338987A (en) Exception test support program and device
JP3196675B2 (en) Language processing method
JP2010287101A (en) Software debugging device and method
JPS62113244A (en) Program test device
JP4055197B2 (en) Device for analyzing procedures included in the program
JP2000207246A (en) Debugging support device, method therefor and recording medium recorded with softwater for supporting debugging
JP2004287869A (en) Program execution monitoring device and method
RU2390821C1 (en) Dynamic instrumentation technique
JPH10293683A (en) Device for comparatively analyzing program, method therefor and mechanically readable recording medium recording comparative analytic program for program
JPH05250221A (en) Simulator execution system
JP3077627B2 (en) Debugging method and recording medium for recording debug program

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010206

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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: 20080302

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090302

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100302

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100302

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 10

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 10

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: 20110302

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20130302

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130302

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20140302

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees