JPH0695916A - Interruption point setting system - Google Patents

Interruption point setting system

Info

Publication number
JPH0695916A
JPH0695916A JP4247033A JP24703392A JPH0695916A JP H0695916 A JPH0695916 A JP H0695916A JP 4247033 A JP4247033 A JP 4247033A JP 24703392 A JP24703392 A JP 24703392A JP H0695916 A JPH0695916 A JP H0695916A
Authority
JP
Japan
Prior art keywords
interruption
instruction
setting
interruption point
point
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
JP4247033A
Other languages
Japanese (ja)
Inventor
Toshihiro Fukui
敏弘 福井
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4247033A priority Critical patent/JPH0695916A/en
Publication of JPH0695916A publication Critical patent/JPH0695916A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To eliminate the setting of a useless interruption point without setting up an interruption point in a procedure not to be executed and to reduce the quantity of processing required for the setting instruction of an interruption point so as to attain rapid processing by storing the set instruction of an interruption point, and when control is transferred to another procedure or the like, retrieving the stored set instruction and setting up the interruption point when the corresponding set instruction exists in respect to an interruption point setting system for setting up an interruption point. CONSTITUTION:The interruption point setting system is provided with an interruption point setting instruction storing table 3 for storing a specified interruption point specifying position and an interruption specifying procesure name, a secondary processing part 22 for extracting an interruption specifying position corresponding to the interruption specifying procedure name from the table 3 and an interruption point setting processing part 23 for setting up an interruption point on the interruption specifying position extracted by the processing part 22 and constituted so that an execution program 4 whose interruption point is set up by the processing part 23 is executed to interrupt the program by the corresponding interruption point.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、中断点を設定する中断
点設定方式であって、プログラムの実行を中断させるた
めの中断点設定方式に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an interruption point setting method for setting an interruption point, and more particularly to an interruption point setting method for interrupting program execution.

【0002】[0002]

【従来の技術】従来の言語デバッガにおいて、プログラ
ムの実行を中断させるための中断点について利用者から
の指示があったときに、その指示に合致する全ての位置
に実際に中断点を設定していた。このため、利用者から
の中断点の設定指示が広範囲の手続きに及ぶ場合、合致
する全ての位置に実際に中断点を設定していた。たとえ
ば1000個の手続きからなるプログラムにおいて、手
続きの出口に中断点を設定する指示が行われたとき、各
手続きにこの指示に合致する位置が平均3個づつあった
場合、3000個の中断点を設定していた。
2. Description of the Related Art In a conventional language debugger, when a user gives an instruction about an interruption point for interrupting the execution of a program, the interruption point is actually set at all the positions that match the instruction. It was Therefore, when the instruction to set the break point from the user covers a wide range of procedures, the break points are actually set at all the matching positions. For example, in a program consisting of 1000 procedures, when an instruction to set a break point is issued at the exit of a procedure, if each procedure has 3 positions that match this instruction on average, 3000 break points are set. Had set.

【0003】[0003]

【発明が解決しようとする課題】しかし、多くの手続き
からなるプログラムを実行する場合、全ての手続きが実
行されるとは限らない。従って、このようなプログラム
のデバッグにおいて、利用者からの中断点の設定指示が
広範囲の手続きに及ぶものであっても、設定されたこれ
ら全ての中断点で中断するとは限らない。上記の例で
は、1000個の手続きのうち、実行される手続きが5
00個の場合、実行されない500個に設定された15
00個の中断点は、全く無意味になるという問題があっ
た。
However, when a program consisting of many procedures is executed, not all the procedures are executed. Therefore, in debugging such a program, even if an instruction to set an interruption point from a user covers a wide range of procedures, the instruction is not always interrupted at all the set interruption points. In the above example, out of 1000 procedures, 5 procedures are executed.
If it is 00, it will not be executed 15 set to 500
There was a problem that 00 break points were completely meaningless.

【0004】また、利用者からの中断点の設定指示が広
範囲の手続きに及ぶものでなくても、指示された手続き
が実行されない場合には、その指示によって設定した中
断点は、全く無意味になるという問題もあった。
Even if the instruction to set the break point from the user does not cover a wide range of procedures, if the specified procedure is not executed, the break point set by the instruction is completely meaningless. There was also the problem of becoming.

【0005】本発明は、これらの問題を解決するため、
中断点の設定指示に対応して、その設定指示を保存して
おき、制御が手続きに移行したときなどに、保存されて
いる設定指示からその手続きに対する設定指示を検索
し、該当する設定指示があれば中断点を設定し、実行さ
れない手続きに中断点を設定しなく、無意味な中断点の
設定を無くし、中断点の設定指示に要する処理量を削減
して高速化を図ることを目的としている。
The present invention solves these problems.
Corresponding to the setting instruction of the interruption point, the setting instruction is saved, and when the control shifts to the procedure, the setting instruction for the procedure is searched from the saved setting instruction and the corresponding setting instruction is displayed. The purpose is to set a break point if there is one, do not set a break point for a procedure that is not executed, eliminate a meaningless break point setting, and reduce the processing amount required for setting a break point to speed up the process. There is.

【0006】[0006]

【課題を解決するための手段】図1を参照して課題を解
決するための手段を説明する。図1において、中断点設
定指示保存テーブル3は、指示された中断指示位置およ
び中断指示手続き名を保存するものである。
[Means for Solving the Problems] Means for solving the problems will be described with reference to FIG. In FIG. 1, the interruption point setting instruction storage table 3 stores the indicated interruption instruction position and interruption instruction procedure name.

【0007】二次処理部22は、中断点設定指示保存テ
ーブル3から制御が移行する手続き名に対応する中断指
示位置を取り出すものである。中断点設定処理部23
は、二次処理部22によって取り出した中断指示位置に
中断点を設定するものである。
The secondary processing unit 22 extracts the interruption instruction position corresponding to the procedure name to which the control is transferred from the interruption point setting instruction storage table 3. Break point setting processing unit 23
Is for setting an interruption point at the interruption instruction position extracted by the secondary processing unit 22.

【0008】[0008]

【作用】本発明は、図1に示すように、指示された中断
指示位置および中断指示手続き名を中断点設定指示保存
テーブル3に保存し、二次処理部22がこの中断点設定
指示保存テーブル3から制御のある手続き名に対応する
中断指示位置を取り出し、中断点設定処理部23が二次
処理部22によって取り出した中断指示位置に中断点を
設定し、この中断点の設定された実行プログラム4を実
行して該当する中断点で中断するようにしている。
According to the present invention, as shown in FIG. 1, the designated interruption instruction position and interruption instruction procedure name are saved in the interruption point setting instruction storage table 3, and the secondary processing unit 22 stores the interruption point setting instruction storage table. 3, an interruption instruction position corresponding to a controlled procedure name is taken out, the interruption point setting processing unit 23 sets the interruption point at the interruption instruction position taken out by the secondary processing unit 22, and the execution program in which this interruption point is set 4 is executed and the process is interrupted at the corresponding break point.

【0009】この際、実行プログラム4を実行して他の
手続き名の実行プログラム4に制御の移行が発生したと
きに、二次処理部22が中断点設定指示保存テーブル3
からこの移行先の手続き名に対応する中断指示位置を取
り出し、中断点設定処理部23がこの中断指示位置に中
断点を設定した後、この実行プログラム4の実行を再開
して該当する中断点で中断するようにしている。
At this time, when the execution program 4 is executed and control is transferred to the execution program 4 having another procedure name, the secondary processing unit 22 causes the interruption point setting instruction storage table 3
Then, the interruption instruction position corresponding to the procedure name of the transfer destination is taken out, the interruption point setting processing unit 23 sets the interruption point at the interruption instruction position, and then the execution of the execution program 4 is restarted to start at the corresponding interruption point. I am trying to suspend it.

【0010】また、中断点設定処理部23が中断指示位
置に中断点を設定したときに、併せて中断点設定指示保
存テーブル3から対応する手続き名を削除するようにし
ている。
When the interruption point setting processing unit 23 sets an interruption point at the interruption instruction position, the corresponding procedure name is also deleted from the interruption point setting instruction storage table 3.

【0011】従って、中断点の設定指示に対応して、そ
の設定指示を保存しておき、制御が他の手続きに移行し
たときなどに、保存されている設定指示からその手続き
に対する設定指示を検索し、該当する設定指示があれば
中断点を設定し、その中断点で中断することにより、実
行されない手続きに中断点を設定しなく、無意味な中断
点の設定を無くし、中断点の設定指示に要する処理量を
削減して高速化を図ることが可能となる。
Therefore, the setting instruction is stored in correspondence with the setting instruction of the interruption point, and when the control shifts to another procedure, the setting instruction for the procedure is retrieved from the stored setting instruction. However, if there is a corresponding setting instruction, an interruption point is set, and by suspending at that interruption point, no interruption point is set for procedures that are not executed, meaningless interruption point settings are eliminated, and an instruction for setting an interruption point is given. It is possible to reduce the amount of processing required for speeding up.

【0012】[0012]

【実施例】次に、図1から図9を用いて本発明の実施例
の構成および動作を順次詳細に説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the construction and operation of an embodiment of the present invention will be described in detail with reference to FIGS.

【0013】図1は、本発明の1実施例構成図を示す。
図1において、入力部1は、各種指示を入力するもので
あって、ここでは、中断点設定指示11や実行指示12
などの入力である。
FIG. 1 shows a block diagram of an embodiment of the present invention.
In FIG. 1, an input unit 1 inputs various instructions, and here, an interruption point setting instruction 11 and an execution instruction 12 are input.
Is input.

【0014】中断点設定指示11は、中断点の設定を指
示するコマンドであって、例えば AT EXIT PROG1、PROG2、PROG3 である。ここで、ATは中断点の設定を指示するコマン
ドを表し、EXITは中断指示位置が出口である旨を表
し、PROG1、PROG2およびPROG3は中断点
を設定する中断指示手続き名を表す。
The interruption point setting instruction 11 is a command for instructing the setting of the interruption point, and is, for example, AT EXIT PROG1, PROG2, PROG3. Here, AT represents a command instructing the setting of an interruption point, EXIT represents that the interruption instruction position is the exit, and PROG1, PROG2, and PROG3 represent interruption instruction procedure names for setting the interruption point.

【0015】実行指示12は、実行プログラム4の実行
指示するコマンドであって、例えば GO である。
The execution instruction 12 is a command for instructing the execution of the execution program 4, and is, for example, GO.

【0016】処理部2は、中断点を設定したりなどの各
種処理を行うものであって、ここでは、一次処理部2
1、二次処理部22、中断点設定処理部23、およびプ
ログラム実行処理部24などから構成されるものであ
る。
The processing unit 2 performs various processes such as setting an interruption point. Here, the primary processing unit 2 is used.
1, a secondary processing unit 22, a break point setting processing unit 23, a program execution processing unit 24, and the like.

【0017】一次処理部21は、中断点設定指示11に
対応して中断指示位置および中断指示手続き名を取り出
し、中断点設定指示保存テーブル3に格納して保存する
ものである。
The primary processing unit 21 extracts the interruption instruction position and the interruption instruction procedure name corresponding to the interruption point setting instruction 11 and stores them in the interruption point setting instruction storage table 3.

【0018】二次処理部22は、中断点設定指示保存テ
ーブル3を参照して、制御が移行する手続き名に対応す
る中断指示位置を取り出し、中断点設定処理部23に中
断点の設定を要求したりなどするものである。
The secondary processing unit 22 refers to the interruption point setting instruction storage table 3 to retrieve the interruption instruction position corresponding to the procedure name to which the control is transferred, and requests the interruption point setting processing unit 23 to set the interruption point. It is something to do.

【0019】中断点設定処理部23は、実行プログラム
4中の、二次処理部22から要求された中断指示位置に
中断点を設定するものである。プログラム実行処理部2
4は、中断点の設定された実行プログラム4の実行を行
うと共に、手続き間にまたがる制御の移行を検出したり
などを行うものである。
The interruption point setting processing section 23 sets an interruption point at the interruption instruction position requested by the secondary processing section 22 in the execution program 4. Program execution processing unit 2
Reference numeral 4 is for executing the execution program 4 in which a break point is set, and detecting a transfer of control across procedures.

【0020】中断点設定指示保存テーブル3は、一次処
理部21が中断点設定指示11から取り出した中断指示
位置および中断指示手続き名を格納して保存するテーブ
ルである。
The interruption point setting instruction storage table 3 is a table for storing and saving the interruption instruction position and the interruption instruction procedure name extracted from the interruption point setting instruction 11 by the primary processing unit 21.

【0021】実行プログラム4は、中断点を設定してデ
バッグする対象のプログラムである。図2は、本発明の
中断点設定指示保存テーブル例を示す。これは、図1の
一次処理部21が中断点設定指示11を解析し、中断点
の設定指示位置および中断指示された中断指示手続き名
を取り出し、これらを格納して保存するテーブルであ
る。例えば中断点設定指示11が AT EXIT PROG1、PROG2、PROG3 の場合、 と解析して格納する。
The execution program 4 is a program to be debugged by setting break points. FIG. 2 shows an example of the interruption point setting instruction storage table of the present invention. This is a table in which the primary processing unit 21 of FIG. 1 analyzes the interruption point setting instruction 11, retrieves the interruption point setting instruction position and the interruption instruction procedure name for which the interruption instruction is given, and stores and stores them. For example, when the interruption point setting instruction 11 is AT EXIT PROG1, PROG2, PROG3, And parse and store.

【0022】図3は、本発明の中断点設定指示コマンド
例を示す。ここに記載したコマンド、 AT EXIT PROG1、PROG2、PROG3 は中断点設定指示11であって、ATは中断点設定指示
コマンドを表し、EXITは中断指示位置が出口を表
し、PROG1、PROG2およびPROG3が中断点
の設定指示のあった中断指示手続き名を表す。
FIG. 3 shows an example of an interruption point setting instruction command of the present invention. The commands described here, AT EXIT PROG1, PROG2, and PROG3, are break point setting instructions 11, AT represents a break point setting command, EXIT represents a break instruction position, and PROG1, PROG2, and PROG3 break. Indicates the name of the interruption instruction procedure for which there was an instruction to set points.

【0023】図4は、本発明の実行指示コマンド例を示
す。このコマンド GO は、実行プログラム4を実行させるコマンドである。
FIG. 4 shows an example of the execution instruction command of the present invention. This command GO is a command for executing the execution program 4.

【0024】次に、図5から図9を用いて図1の構成の
動作を順次詳細に説明する。図5は、本発明に係わる中
断点設定指示の処理フローチャートを示す。これは、利
用者が中断点設定指示11を入力して、中断指示位置お
よび中断指示手続き名を解析して中断点設定指示保存テ
ーブル3に格納して保存する手続きである。
Next, the operation of the configuration of FIG. 1 will be sequentially described in detail with reference to FIGS. FIG. 5 shows a processing flowchart of an interruption point setting instruction according to the present invention. This is a procedure in which the user inputs the interruption point setting instruction 11, analyzes the interruption instruction position and the interruption instruction procedure name, stores them in the interruption point setting instruction storage table 3, and saves them.

【0025】図5において、S1は、利用者が中断点設
定指示11である AT EXIT PROG1、PROG2、PROG3 を入力したことに対応して、コマンドを解析する。ここ
では、ATであって、中断点設定指示11と解析する。
In FIG. 5, S1 analyzes the command in response to the user inputting AT EXIT PROG1, PROG2, PROG3 which is the interruption point setting instruction 11. Here, it is an AT and is analyzed as the interruption point setting instruction 11.

【0026】S2は、中断点設定指示コマンドか判別す
る。YESの場合には、中断点設定指示コマンドと判明
したので、S3以降の処理を行う。NOの場合には、他
の該当する処理を続行する。
In step S2, it is determined whether the command is an interruption point setting instruction command. In the case of YES, the command is found to be the break point setting instruction command, and therefore the processes from S3 are performed. If NO, continue with other applicable processing.

【0027】S3は、設定指示位置と設定指示手続き名
を取り出す。これは、S1でコマンドを解析し、設定指
示位置(例えばEXIT)および設定指示手続き名(例
えばPROG1、PROG2、PROG3)を取り出
す。
In step S3, the setting instruction position and the setting instruction procedure name are taken out. This analyzes the command in S1 and extracts the setting instruction position (for example, EXIT) and the setting instruction procedure name (for example, PROG1, PROG2, PROG3).

【0028】S4は、取り出した設定指示位置と設定指
示手続き名を中断点設定指示保存テーブル3に保存す
る。例えば右側に記載した中断点設定指示保存テーブル
3に記載したように、 と格納して保存する。
In step S4, the fetched setting instruction position and setting instruction procedure name are stored in the interruption point setting instruction storage table 3. For example, as described in the interruption point setting instruction storage table 3 on the right side, And store and save.

【0029】S5は、二次処理部22を呼び出す。これ
は、二次処理部22を呼び出し、後述する図7のフロー
チャートに示すように、制御のある手続き名の中断指示
位置を中断点設定指示保存テーブル3から取り出し、実
行プログラム4中の該当する位置に中断点を設定する処
理を行う(後述する)。
In step S5, the secondary processing unit 22 is called. This calls the secondary processing unit 22, retrieves the interruption instruction position of the procedure name with control from the interruption point setting instruction storage table 3 as shown in the flowchart of FIG. A process of setting a break point is performed (described later).

【0030】以上によって、利用者が中断点設定指示1
1を入力したことに対応して、当該中断点設定指示11
を解析し、中断指示位置および中断指示手続き名を中断
点設定指示保存テーブル3に格納して保存する。そし
て、制御がある手続き名に移行したときにその手続き名
の中断指示位置(例えばEXIT)を取り出し、当該位
置に中断点を設定する。これらにより、制御が移行した
手続きにのみ中断点を設定するが、実行しない手続きに
中断点を設定しないので、無意味な中断点を無くすこと
が可能となると共に、中断点の設定処理に必要なステッ
プ数を削減することが可能となる。
As described above, the user gives the instruction 1 to set the break point.
In response to the input of 1, the interruption point setting instruction 11
Is analyzed, and the interruption instruction position and the interruption instruction procedure name are stored and saved in the interruption point setting instruction storage table 3. Then, when the control moves to a certain procedure name, the interruption instruction position (for example, EXIT) of the procedure name is taken out, and the interruption point is set at the position. With these, the breakpoints are set only in the procedure to which the control is transferred, but the breakpoints are not set in the procedures that are not executed. Therefore, it is possible to eliminate meaningless breakpoints and it is necessary to set the breakpoints. It is possible to reduce the number of steps.

【0031】図6は、本発明に係わる実行指示の処理フ
ローチャートを示す。これは、実行プログラム4の実行
を開始したときの動作である。図6において、S6は、
利用者がGOコマンドを入力したことに対応して、コマ
ンドの解析を行う。ここでは、GOコマンド(実行指示
12)であると解析する。
FIG. 6 shows a processing flowchart of an execution instruction according to the present invention. This is the operation when the execution of the execution program 4 is started. In FIG. 6, S6 is
The command is analyzed in response to the user inputting the GO command. Here, it is analyzed as a GO command (execution instruction 12).

【0032】S7は、実行指示コマンドか判別する。Y
ESの場合には、S8以降の処理を行う。NOの場合に
は、該当する処理を続行する。S8は、二次処理部22
を呼び出し、制御の移行する手続き名の中断指示位置を
中断点設定指示保存テーブル3から取り出し、実行プロ
グラム4中の該当する位置に中断点を設定する処理を行
う(後述する)。
In step S7, it is determined whether the command is an execution instruction command. Y
In the case of ES, the processing after S8 is performed. In the case of NO, the corresponding processing is continued. S8 is the secondary processing unit 22
Is executed to retrieve the interruption instruction position of the procedure name to which the control is transferred from the interruption point setting instruction storage table 3 and set the interruption point at the corresponding position in the execution program 4 (described later).

【0033】S9は、実行プログラムを実行する。これ
は、図1の中断点を設定した実行プログラム4の実行を
開始する。S10は、手続き間にまたがる制御の移行が
発生したか判別する。YESの場合、即ちある手続き名
から他の手続き名のプログラムに制御が移行したと判明
した場合、S11で二次処理部22を呼び出し、中断点
の設定を行う。一方、NOの場合には、S9に戻る。
In step S9, the execution program is executed. This starts the execution of the execution program 4 which sets the break point in FIG. In S10, it is determined whether or not a control transfer across procedures has occurred. In the case of YES, that is, when it is determined that the control is transferred from the program having the certain procedure name to the program having the other procedure name, the secondary processing unit 22 is called in S11, and the interruption point is set. On the other hand, if NO, the process returns to S9.

【0034】以上によって、利用者がGOコマンドを入
力したことに対応して、中断点を設定した実行プログラ
ム4の実行を開始する。この際、ある手続き名から他の
手続き名の実行プログラム4に移行したとき、中断点設
定指示保存テーブル3から制御の移行した手続き名の中
断指示位置に中断点を設定する。これにより、制御が移
行した手続き名にのみ中断点を設定し、無意味な中断点
の設定を無くすことが可能となる。
As described above, in response to the user inputting the GO command, the execution of the execution program 4 in which the break point is set is started. At this time, when a procedure name is transferred to the execution program 4 of another procedure name, the break point is set from the break point setting instruction storage table 3 to the break instruction position of the procedure name to which the control is transferred. This makes it possible to set a break point only to the procedure name to which the control is transferred, and to eliminate a meaningless break point setting.

【0035】図7は、本発明の中断点の設定フローチャ
ートを示す。これは、図1の二次処理部22が制御の移
行した手続きに中断点を設定する手順である。図7にお
いて、S12は、制御のある手続き名を取り出す。これ
は、現在、制御のある手続き名(例えばPROG1)を
取り出す。
FIG. 7 shows a flowchart for setting an interruption point according to the present invention. This is a procedure in which the secondary processing unit 22 of FIG. 1 sets an interruption point in the procedure to which the control is transferred. In FIG. 7, a step S12 takes out a procedure name having control. This retrieves the procedure name that currently has control (eg PROG1).

【0036】S13は、取り出した手続き名をもとに、
中断点設定指示保存テーブル3から該当する中断指示位
置を取り出す。これは、例えば右側に記載した中断点設
定保存テーブル3から、制御のある手続き名(例えばP
ROG1)の中断設定位置(例えばEXIT)を取り出
す。
At step S13, based on the retrieved procedure name,
The corresponding interruption instruction position is extracted from the interruption point setting instruction storage table 3. This is because, for example, the procedure name with control (for example, P
The interruption setting position (for example, EXIT) of ROG1) is taken out.

【0037】S14は、該当する中断指示位置が無くな
ったか判別する。YESの場合には、制御の移行する手
続き名の中断設定位置を全て中断点設定指示保存テーブ
ル3から取り出し、中断点の設定を終了したので、二次
処理部22の処理を終わる。一方、NOの場合には、S
15に進む。
In step S14, it is determined whether or not the corresponding interruption instruction position has disappeared. In the case of YES, all the interruption setting positions of the procedure name to which the control is transferred are fetched from the interruption point setting instruction storage table 3, and the setting of the interruption point is completed. Therefore, the processing of the secondary processing unit 22 ends. On the other hand, if NO, S
Proceed to 15.

【0038】S15は、取り出した中断指示位置と手続
き名で、中断設定処理部23を呼び出して中断点を実行
プログラム4の該当する手続き名の該当する中断指示位
置に設定する。
In step S15, the interruption setting position and the procedure name are fetched, and the interruption setting processing unit 23 is called to set the interruption point to the corresponding interruption instruction position of the corresponding procedure name of the execution program 4.

【0039】S16は、中断点設定指示保存テーブル3
から中断点を設定した位置の手続き名を削除する。これ
により、中断点の設定済の手続き名(例えばPROG1
など)を中断点設定指示保存テーブル3から削除する。
そして、S13に戻り、次の手続き名について中断点を
設定することを繰り返す。
S16 is an interruption point setting instruction storage table 3
Delete the procedure name at the position where the breakpoint is set from. As a result, the procedure name for which the interruption point has been set (for example, PROG1
Etc.) from the interruption point setting instruction storage table 3.
Then, the process returns to S13 and the setting of the interruption point for the next procedure name is repeated.

【0040】以上によって、二次処理部22が中断点設
定指示保存テーブル3から現在制御のある手続き名を取
り出してこの手続き名の中断指示位置に中断点を全て設
定すると共に中断点設定指示保存テーブル3から削除す
る。これにより、制御の移行した手続き名の実行プログ
ラム4中の該当する中断指示位置に中断点を設定し、無
意味な中断点の設定を無くし、中断点設定の処理ステッ
プを削減できる。
As described above, the secondary processing unit 22 retrieves the procedure name currently controlled from the interruption point setting instruction storage table 3 and sets all the interruption points at the interruption instruction position of this procedure name, and at the same time, the interruption point setting instruction storage table. Delete from 3. As a result, an interruption point is set at a corresponding interruption instruction position in the execution program 4 of the procedure name to which control has been transferred, meaningless setting of the interruption point is eliminated, and processing steps for setting the interruption point can be reduced.

【0041】次に、図5から図7のフローチャートの手
順に従い、図2を用いて手続き名PROG1に制御があ
るときに、図3のAT EXIT PROG1、PRO
G2、PROG3の中断点設定指示コマンドが指示さ
れ、次に図4のGOの実行指示コマンドが指示され、手
続き名PROG2に制御が移行した場合を例に具体的に
説明する。この具体例では、図5のS5を行い、図6の
S8を行わない例で説明する。
Next, according to the procedure of the flowcharts of FIGS. 5 to 7, when the procedure name PROG1 is controlled by using FIG. 2, AT EXIT PROG1, PRO of FIG.
A specific description will be given of a case where the interruption point setting instruction command of G2 and PROG3 is instructed, then the GO execution instruction command of FIG. 4 is instructed, and the control is transferred to the procedure name PROG2. In this specific example, an example will be described in which S5 of FIG. 5 is performed and S8 of FIG. 6 is not performed.

【0042】図3のAT EXIT PROG1、PR
OG2、PROG3のコマンドの通知は、図5および図
7のフローチャートに従い、以下の順序で処理する。中
断指示位置EXITおよび中断指示手続き名PROG1
と中断設定手続き名PROG2と中断指示手続き名PR
OG3として図2の中断点設定指示保存テーブル3のよ
うに保存する。また、手続き名PROG1の出口に中断
点を設定する。
AT EXIT PROG1 and PR shown in FIG.
The notification of the command of OG2 and PROG3 is processed in the following order according to the flowcharts of FIGS. Interruption instruction position EXIT and interruption instruction procedure name PROG1
And interruption setting procedure name PROG2 and interruption instruction procedure name PR
It is saved as OG3 as in the interruption point setting instruction saving table 3 in FIG. Also, an interruption point is set at the exit of the procedure name PROG1.

【0043】S1→S2YES→S3→S4→S5→S
12手続き名PROG1→S13中断指示位置EXIT
→S14NO→S15→S16→S13→S14YE
S。次に、図4のGOのコマンドの通知は、図6および
図7のフローチャートに従い、以下の順序で処理され、
手続き名PROG2へ制御が移行したときに、手続き名
PROG2の出口に中断点が設定される。
S1 → S2 YES → S3 → S4 → S5 → S
12 Procedure name PROG1 → S13 Interruption instruction position EXIT
→ S14 NO → S15 → S16 → S13 → S14 YE
S. Next, the GO command notification in FIG. 4 is processed in the following order according to the flowcharts in FIGS. 6 and 7,
When control is transferred to the procedure name PROG2, an interruption point is set at the exit of the procedure name PROG2.

【0044】S6→S7YES→S9→S10YES→
S11→S12手続き名PROG2→S13中断指示位
置EXIT→S14NO→S15→S16→S13→S
14YES→S9→・・・ 図8は、本発明の全体の動作説明フローチャートを示
す。これは、図1の構成の具体的な構成における全体の
動作である。
S6 → S7 YES → S9 → S10 YES →
S11 → S12 Procedure name PROG2 → S13 Interruption instruction position EXIT → S14 NO → S15 → S16 → S13 → S
14 YES → S9 → ... FIG. 8 shows a flowchart for explaining the overall operation of the present invention. This is the entire operation in the specific configuration of the configuration of FIG.

【0045】図8において、S21は、実行プログラム
のローディングおよびデバッグ情報テーブルの読み込み
を行う。これは、図1の実行プログラム4の主記憶への
ローディングを行うと共に、後述する図9に示すデバッ
グ情報テーブル5の読み込みを行う。
In FIG. 8, S21 loads the execution program and the debug information table. This loads the execution program 4 of FIG. 1 into the main memory and also loads the debug information table 5 shown in FIG. 9 described later.

【0046】S22は、中断する。S23は、実行指示
コマンドの入力を行う。これは、既述した実行指示コマ
ンド“GO”を利用者が入力する。
S22 is interrupted. In S23, the execution instruction command is input. The user inputs the execution instruction command “GO” described above.

【0047】S24は、S23の実行指示コマンド“G
O”の入力に対応して、実行プログラム4の実行を開始
する。S25は、SVC命令か判別する。これは、実行
プログラム4中に設定されたSVC命令(デバッガに制
御を渡す命令)か判別する。YESの場合には、制御が
デバッガ(図1の処理部2)に制御が渡り、S22の中
断となる。一方、NOの場合には、S26に進む。
In S24, the execution instruction command "G
In response to the input of "O", the execution of the execution program 4 is started. It is determined in S25 whether it is the SVC instruction. This is the SVC instruction set in the execution program 4 (instruction for passing control to the debugger). In the case of YES, the control is transferred to the debugger (the processing unit 2 in FIG. 1) and the process of S22 is interrupted, while in the case of NO, the process proceeds to S26.

【0048】S26は、CALL命令か判別する。これ
は、ある手続き名の実行プログラム4を実行中に他の手
続き名の実行プログラム4を呼び出すCALL命令が実
行されたか判別する。YESの場合には、他の手続き名
の実行プログラム4に移行すると判明したので、S27
でこの呼び出し先の手続きに対する中断点を設定する
(即ち、中断点設定指示保存テーブル3から、移行先の
手続き名を取り出してその中断指示位置に中断点を設定
する(中断指示位置にSVC命令を埋め込むと共に元の
命令を退避する、図9を用いて後述する))。そして、
S24に戻る。
In step S26, it is determined whether the instruction is a CALL instruction. This determines whether the CALL instruction for calling the execution program 4 of another procedure name is executed while the execution program 4 of a certain procedure name is being executed. In the case of YES, it is determined to move to the execution program 4 of another procedure name, so S27
Then, an interruption point for the procedure of this call destination is set (that is, the procedure name of the transition destination is taken out from the interruption point setting instruction storage table 3 and the interruption point is set at the interruption instruction position (the SVC command is set at the interruption instruction position). Embedding and saving the original instruction, which will be described later with reference to FIG. 9)). And
Return to S24.

【0049】以上のS23からS27によって、実行指
示コマンドGOを入力して実行プログラム4の実行を開
始し、SVC命令を実行したときにデバッガ(図1の処
理部2)に制御を渡して中断したり、CALL命令を実
行して他の手続きに移行したときにこの移行した先の手
続き名の実行プログラム4中の中断指示位置にSVC命
令を設定および元の命令を退避した後、実行プログラム
4の実行を繰り返す。これらにより、CALL命令で他
の手続きに移行したときにSVC命令を埋め込んで中断
点を設定し、無駄な中断点の設定を無くし、中断点設定
ステップを削減して高速化することが可能となる。
Through the above S23 to S27, the execution instruction command GO is input to start the execution of the execution program 4, and when the SVC instruction is executed, the control is passed to the debugger (the processing unit 2 in FIG. 1) and the execution is interrupted. Alternatively, when the CALL instruction is executed and another procedure is executed, the SVC instruction is set at the interruption instruction position in the execution program 4 of the procedure name of the transfer destination, and the original instruction is saved. Repeat the execution. As a result, it is possible to embed the SVC instruction to set a breakpoint when the CALL instruction shifts to another procedure, eliminate unnecessary setting of a breakpoint, reduce the number of steps for setting a breakpoint, and increase the speed. .

【0050】図9は、本発明の中断点設定フローチャー
トを示す。図9において、S31は、“EXIT”の指
示により、デバッグ情報からRETURN文とEND文
に対応する命令アドレスを取り出す。これは、例えば図
8のCALL命令で呼び出された先の中断指示手続き名
(例えば図2のPROG1)の中断指示位置である“E
XIT(出口)”の指示により、右側に記載したデバッ
グ情報テーブル5(コンパイル時に文の種類と命令アド
レスの対応関係を収集しておいたテーブル)から、当該
“EXIT”に対するRETURN(復帰命令)および
END(手続きの終了を表す)に対応する命令アドレス
(ここでは、1000、2000)を取り出す。
FIG. 9 shows an interruption point setting flowchart of the present invention. In FIG. 9, S31 fetches the instruction address corresponding to the RETURN statement and the END statement from the debug information according to the instruction of "EXIT". This is, for example, "E" which is the interruption instruction position of the previous interruption instruction procedure name (for example, PROG1 in FIG. 2) called by the CALL instruction in FIG.
By the instruction of “XIT (exit)”, the RETURN (return instruction) for the “EXIT” and the return information from the debug information table 5 (the table that has collected the correspondence between the statement type and the instruction address at the time of compilation) described on the right side The instruction address (here, 1000, 2000) corresponding to END (indicating the end of the procedure) is fetched.

【0051】S32は、取り出した命令アドレスにSV
C命令を埋め込むと共に、元の命令を退避する。これ
は、S31で取り出した命令アドレスにSVC命令を埋
め込むと共に、右側に記載したように、S31で取り出
した命令アドレス、1000の位置の元の命令“L R
13”および2000の位置の元の命令“L R13”
を命令退避テーブル6に退避する。
In S32, SV is added to the fetched instruction address.
The C instruction is embedded and the original instruction is saved. This is because the SVC instruction is embedded in the instruction address fetched in S31, and the instruction address fetched in S31 and the original instruction "LR" at the position of 1000 are written as described on the right side.
13 "and the original instruction at position 2000" LR13 "
Are saved in the instruction save table 6.

【0052】以上によって、CALL命令などで他の手
続きに移行したときに、その移行先の中断指示手続き名
に対応する中断指示位置を例えば図2の中断点設定指示
保存テーブル3から取り出し、この中断指示位置(例え
ば“EXIT(手続きの出口)”に対応する命令アドレ
スをデバッグ情報テーブル5から取り出し、この取り出
した命令アドレスにSVC命令を埋め込むと共に元の命
令を命令退避テーブル6に退避し、中断点の設定を行
う。
As described above, when the procedure is shifted to another procedure by the CALL command or the like, the interruption instruction position corresponding to the interruption instruction procedure name of the transition destination is taken out from, for example, the interruption point setting instruction storage table 3 in FIG. The instruction address corresponding to the designated position (for example, “EXIT (exit of procedure)” is fetched from the debug information table 5, the SVC instruction is embedded in the fetched instruction address, the original instruction is saved in the instruction save table 6, and the interruption point is set. Set.

【0053】[0053]

【発明の効果】以上説明したように、本発明によれば、
中断点の設定指示に対応して、その設定指示(例えば中
断指示手続き名、中断指示位置)を保存しておき、制御
が他の手続きに移行したときに、保存されている設定指
示からその手続きに対する設定指示を検索し、該当する
設定指示があれば中断点を設定し、その中断点で中断す
る構成を採用しているため、実行されない手続きに中断
点を設定しなく、無意味な中断点の設定を無くすことが
できると共に、中断点の設定指示に要する処理量を削減
して高速化を図ることができる。
As described above, according to the present invention,
Corresponding to the setting instruction of the interruption point, the setting instruction (for example, the interruption instruction procedure name, the interruption instruction position) is saved, and when the control shifts to another procedure, the procedure is changed from the saved setting instruction. The setting instruction is searched for, and if there is a corresponding setting instruction, an interruption point is set, and the system is configured to interrupt at that interruption point. Can be eliminated, and the processing amount required to instruct the setting of the interruption point can be reduced to increase the speed.

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

【図1】本発明の1実施例構成図である。FIG. 1 is a configuration diagram of an embodiment of the present invention.

【図2】本発明の中断点設定指示保存テーブル例であ
る。
FIG. 2 is an example of an interruption point setting instruction storage table of the present invention.

【図3】本発明の中断点設定指示コマンド例である。FIG. 3 is an example of an interruption point setting instruction command of the present invention.

【図4】本発明の実行指示コマンド例である。FIG. 4 is an example of an execution instruction command of the present invention.

【図5】本発明に係わる中断点設定指示の処理フローチ
ャートである。
FIG. 5 is a processing flowchart of an interruption point setting instruction according to the present invention.

【図6】本発明に係わる実行指示の処理フローチャート
である。
FIG. 6 is a processing flowchart of an execution instruction according to the present invention.

【図7】本発明に中断点の設定フローチャートである。FIG. 7 is a flowchart for setting an interruption point according to the present invention.

【図8】本発明の全体の動作説明フローチャートであ
る。
FIG. 8 is a flowchart for explaining the overall operation of the present invention.

【図9】本発明の中断点設定フローチャートである。FIG. 9 is a flowchart for setting an interruption point according to the present invention.

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

1:入力部 11:中断点設定指示(AT) 12:実行指示(GO) 2:処理部 21:一次処理部 22:二次処理部 23:中断点設定処理部 24:プログラム実行処理部 3:中断点設定指示保存テーブル 4:実行プログラム 5:デバッグ情報テーブル 6:命令退避テーブル 1: Input unit 11: Break point setting instruction (AT) 12: Execution instruction (GO) 2: Processing unit 21: Primary processing unit 22: Secondary processing unit 23: Break point setting processing unit 24: Program execution processing unit 3: Break point setting instruction save table 4: Execution program 5: Debug information table 6: Instruction save table

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】中断点を設定する中断点設定方式におい
て、 指示された中断指示位置および中断指示手続き名を保存
する中断点設定指示保存テーブル(3)と、 この中断点設定指示保存テーブル(3)から制御がある
手続きの中断指示手続き名に対応する中断指示位置を取
り出す二次処理部(22)と、 この二次処理部(22)によって取り出した中断指示位
置に中断点を設定する中断点設定処理部(23)とを備
え、 この中断点設定処理(23)によって中断点の設定され
た実行プログラム(4)を実行して該当する中断点で中
断するように構成したことを特徴とする中断点設定方
式。
1. In an interruption point setting method for setting an interruption point, an interruption point setting instruction storage table (3) for storing an indicated interruption instruction position and an interruption instruction procedure name, and an interruption point setting instruction storage table (3). ), A secondary processing unit (22) for taking out the interruption instruction position corresponding to the procedure instruction name of the controlled procedure, and an interruption point for setting the interruption point at the interruption instruction position fetched by the secondary processing unit (22). A setting processing unit (23) is provided, and the execution program (4) having the breakpoint set by the breakpoint setting process (23) is executed to interrupt at the corresponding breakpoint. Break point setting method.
【請求項2】上記実行プログラム(4)を実行して他の
手続き名の実行プログラム(4)に制御の移行が発生し
たときに、上記二次処理部(22)が上記中断点設定指
示保存テーブル(3)からこの移行先の手続き名に対応
する中断指示位置を取り出し、上記中断点設定処理部
(23)がこの中断指示位置に中断点を設定した後、こ
の実行プログラム(4)の実行を再開して該当する中断
点で中断するように構成したことを特徴とする請求項1
記載の中断点設定方式。
2. When the execution program (4) is executed and control is transferred to the execution program (4) having another procedure name, the secondary processing unit (22) stores the interruption point setting instruction. The interruption instruction position corresponding to the procedure name of the transfer destination is fetched from the table (3), the interruption point setting processing unit (23) sets the interruption point at the interruption instruction position, and then the execution program (4) is executed. 5. The method is further characterized in that the operation is restarted and the operation is interrupted at a corresponding interruption point.
Breakpoint setting method described.
【請求項3】上記中断点設定処理部(23)が中断指示
位置に中断点を設定したときに、併せて上記中断点設定
指示保存テーブル(3)から対応する手続き名を削除す
るように構成したことを特徴とする請求項1記載および
請求項2記載の中断点設定方式。
3. When the break point setting processing unit (23) sets a break point at a break instruction position, the corresponding procedure name is also deleted from the break point setting instruction storage table (3). The interruption point setting method according to claim 1 or 2, characterized in that.
JP4247033A 1992-09-17 1992-09-17 Interruption point setting system Pending JPH0695916A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4247033A JPH0695916A (en) 1992-09-17 1992-09-17 Interruption point setting system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4247033A JPH0695916A (en) 1992-09-17 1992-09-17 Interruption point setting system

Publications (1)

Publication Number Publication Date
JPH0695916A true JPH0695916A (en) 1994-04-08

Family

ID=17157415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4247033A Pending JPH0695916A (en) 1992-09-17 1992-09-17 Interruption point setting system

Country Status (1)

Country Link
JP (1) JPH0695916A (en)

Similar Documents

Publication Publication Date Title
JP2692609B2 (en) Multitask program debugging method and apparatus
JPH06161822A (en) Microprocessor
JPH0695916A (en) Interruption point setting system
JPH0581069A (en) Debugging method for program
JP2642788B2 (en) Execution monitoring point reduction method
JP2642787B2 (en) Interruption location search method
JP2751423B2 (en) Program debug processing method
JPS61180344A (en) Step execution system for high level language
JP2777938B2 (en) Program execution path output device
JP3194925B2 (en) Program debug display method and program debug support device
JP3114686B2 (en) Program debugging method
JPH0736510A (en) Programmable controller
JP2643839B2 (en) Completion method at the time of command input
JPH0635713A (en) Mutual calling system for logical language and another language
JPH04153741A (en) Adverse debugging execution system for debugged program
JPH0484355A (en) Terminal-relying command executing system
JPH05216649A (en) Dynamic changing system for system program
JPH0262633A (en) Inter-program communication system
JPH01222329A (en) System for executing program including condition branching instruction
JPH04216131A (en) Processing system for annotating program
JPH0214335A (en) Interrupting system for debugger
JPH04107605A (en) Control program language processor
Foley et al. Comprehensive Command Reference
JPH02189631A (en) Patch data storage system
JPH04235642A (en) Interruption control system for program module

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20000307