JPH03188535A - プログラム・エラー検出方法 - Google Patents

プログラム・エラー検出方法

Info

Publication number
JPH03188535A
JPH03188535A JP2333406A JP33340690A JPH03188535A JP H03188535 A JPH03188535 A JP H03188535A JP 2333406 A JP2333406 A JP 2333406A JP 33340690 A JP33340690 A JP 33340690A JP H03188535 A JPH03188535 A JP H03188535A
Authority
JP
Japan
Prior art keywords
computer
creation process
simulated
software creation
terminating
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.)
Granted
Application number
JP2333406A
Other languages
English (en)
Other versions
JPH0748182B2 (ja
Inventor
Robert G Hansen
ロバート・ジー・ハンセン
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.)
Bull HN Information Systems Inc
Original Assignee
Bull HN Information Systems Inc
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 Bull HN Information Systems Inc filed Critical Bull HN Information Systems Inc
Publication of JPH03188535A publication Critical patent/JPH03188535A/ja
Publication of JPH0748182B2 publication Critical patent/JPH0748182B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 (技術分野) 本発明は、コンピュータのプログラミング技術に関し、
特に構文的に妥当である記述、即ち一般に誤った使い方
として類別することができるタイプの誤りを含まない記
述における論理的あるいは文脈的な不整合性を検出する
ためのアセンブリ言語のデバッグ・ツールに関する。
(背景技術) 当業者がよく理解するように、コンピュータ・プログラ
ミングは、マシン語において直接行われることはほとん
どない。その代わり、プログラミングは通常C,RAS
 I C。
FORTRANSCOBOL、PASCAL等の比較的
高級な言語形態で行われる。RAS I Cの場合は、
結果として得られる「ソース」プログラムは、個々のソ
ース・コードのプログラミング記述を読取りこれ、を記
述ベースで使用中のハードウェアに適した機械命令に変
・換する機械に常駐するインタープリタ・プログラムを
用いて実行することができる。これは比較的遅いプロセ
スである、しかし、実行可能な即ち「オブジェクト」コ
ードを与えられたハードウェア・タイプに対して最適の
シーケンスでlu意するように特に生成されたコンパイ
ラ・プログラムを介して最初に処理することにより、R
ASICプログラムをより効率よ(遥かに速く実行でき
る。コンパイル作業は、Cの如き高級な多くのプログラ
ムに対するプログラミングおよびプログラム検証タスク
中であっでも、日常的に実施され(実際に、要求され)
でいる。
プログラマの内のある者は、コンパイルと似ているが遥
かに簡単な動作において「アセンブラ」プログラムで機
械レベルの命令に容易に移される、それほど高くないレ
ベルの、より機械に特定される「アセンブリ」と呼ばれ
る言語において作業することを好む。結果として得られ
るオブジェクト・コードは非常に効率がよい。しかし、
アセンブリが低レベルの言語である故に、アセンブラが
捕捉せず特にプログラムの検証(即ち「デバッグ」)プ
ロセスにおいて識別および対応しにくく把握しがたいプ
ログラミングの誤り(即ち「バグ」)を、コーディング
・プロセスにおいて非常に持ち込み易い。
このようなはっきりしない種類の誤りの1つの種別は、
アセンブリ言語の記述が構文、限定、オペランドの定義
等が全て適正に包含される点で完全に合法なものである
が、それにも拘わらず正しく構成された記述が、前の動
作とは明らかに論理的に矛盾するものである。このよう
な種別の、はっきりしないプログラミングの誤りの早期
の検出が本発明の目的とするところである。
(発明の目的) 従って、本発明の主な目的は、アセンブリ言語で書かれ
たコンピュータ・プログラムのソースを分析するための
改善されたデバッグ・ツールの提供にある。
本発明の更に特定の目的は、アセンブリ言語のソース・
コードにおいて、それ自体で考察すれば記述は正しいが
、前の動作の脈絡においては違法であるタイプのはっき
りしないプログラミング・エラーを識別することができ
るデバッグ・プログラムの提供にある。
(発明の概要) 要約すれば、本発明の上記および他の目的は、各命令の
機能、およびこれが影響を及ぼすレジスタ、フラッグ等
の如き特定の機械のアーキテクチャを完全に知悉したデ
バッグ・プログラムの提供により達成される。対応する
命令を実行しながら、コンピュータと丁度同じ方法でア
センブリ言語の記述に実質的に立ち入ることにより、デ
バッグ・プログラムは、このような検査により、問題と
なるアセンブリ言語プログラムにおいて、デバッグ・プ
ログラムが検出し、かつこのような検出と同時に適当な
警告メツセージを発するするようコード化された、前の
動作との特定の潜在的な不整合を識別することができる
。次いで、プログラマはフラッグを付したアセンブリ言
語コードを調べて真正の誤りが存在するかどうかを判定
することができる。
本発明は、その構成および作動方法の双方に関して、以
降の記述を頭書の特許請求の範囲ならびに添付図面に関
して参照することにより最もよく理解することができよ
う。
(実施例) 先に述べたように、遭遇する特に発見が難しいプログラ
ムのLつの種別のバグは、構文、限定、オペランドの定
義等に関する限りアセンブリ言語のソース・コード記述
が全く正しいが、それにも拘わらず正しく構成された記
述が論理的に前の動作と矛盾するものである。このよう
な不整合は、下記のものを含む。即ち、 ■、前の比較命令により設定される指標がテストあるい
は記憶されず、その時の命令がこれらの指標を変更させ
ることになる。
2、その時の命令が、前に修飾されたが修飾子として記
憶されずあるいは使用されなかったレジスタをロード(
従って、破壊)することになる。
3、レジスタの上あるいは下の半分がある前の動作によ
り強制的にクリアされるが、この半分のレジスタがオペ
ランドあるいは修飾子として使用される。強制的なりリ
アは、シフト、ロードあるいはr A N I) J動
作の結果である。
4、条件付き移転が前の動作により影響を受けなかった
指標に基いて試みられる。
5゜その内容がシステムのサービス機能により破壊され
ることが知られるレジスタが、この機能を惹起した後再
びロードされることなく修飾子として使用するためにこ
の時呼出される。
6、あるタイプのアドレス修飾の脈絡において前に現れ
た記号が、この時異なるタイプの文脈において使用する
ために呼出される。
7、リンケージ用の肯定の指標レジスタを用いるために
以前に検査されたサブルーチンが、この時異なる指標レ
ジスタを用いて呼出される。
問題の種別のデバッグ・プログラムの一般的なシーケン
スを示す高レベルのフローチャートである第1図を、最
初に参照する。デバッグのセットアツプにおける最初の
ステップとして、オブジェクト・コードが生成されるべ
き機械のアーキテクチャのい(つかの実質的な特質を、
当業者には周知の方法でソフトウェアで表現する。
If’4に1つの事例として簡単に触れれば、あるアド
レスが2つのソースからの情報を組合わせることにより
(オブジェクト・コードが生成されるべき機械において
)発生される場合を考えよう。
この特徴の事実は、アセンブリ言語の記述が一時に1つ
ずつ調べられる時何が情報ソースおよびアドレスに起こ
るかを追跡するためのコードと共に、デバッグ・プログ
ラムに対してコード化される。ここで、もしソースの1
つが前の動作により破壊されて、アドレス生成の際のそ
の使用の前に意味のある情報で再ロードされなかったと
判定し得るならば、全ての関連するソース・コードが完
全に正しい文脈であっても、おそらくはなにかの誤りが
ある。
テストされるアセンブリ言語のソース・コード・プログ
ラムが調べられ分析される時、種々のテストをステップ
毎に実施することができ、テストの失敗の結果としてプ
ログラマの便益となるように適当なエラー・メツセージ
の発現を生じるようにできる。しかし、本発明は、デバ
ッグ・プログラムの独立的なモジュールにおける上記の
論理的な不整合に対する一連の関連したテストに関する
ものであり、「前の動作との不整合か?」の照会ブロッ
クにより第1図に示される。主な一連のテストの完了後
、ソース・コード・プログラムあるいはプログラム・モ
ジュールのテストを終わるためデバッグ・プログラムに
残る他のテストを実行することができる。
次に、他の点では正しい属性にも拘わらず、テスト中の
ソース・コード・プログラムあるいはプログラム・モジ
ュールにより呼出される前の動作により与えられた記述
の不整合が調べられる、本アセンブリ言語のソース・コ
ード・テスト・モジュールの作動を示す詳細なフローチ
ャートである第2図を(即ち、第2Δ図および第2B図
を・−緒に)参照する。以下の論議においては、1つの
記述が1つの機械言語の命令と非常に密に関連するよう
にアセンブリ言語ソース・コードの使用を仮定する。
このため、検査中のソース・コード・プログラムあるい
はプログラム・モジュールの?/1めから始めて、次の
記述が分析のため呼出される。もしこれがファイル終り
の記述であるならば、次の一連のテストへ出、もしそう
でなければ、これが単にコメント(分析の必要がない)
であるかどうかの判定がなされる。もしこれがコメント
であれば、次の記述が呼出され、もしそうでなければ、
分析は然るべく進む。
最初の照会は、1つの命令が指標即ちフラッグを変更す
るかどうかである。もしそうであれば、前の命令もまた
指標をセットしたかどうかについて判定がなされ、また
もしそうであれば、指標の状態の介在使用が行われたか
どうか判定する。もし前の命令が命令をセットするがそ
れらについて介在使用がなされず、またこの時指標が再
びセットされるならば、論理的な不整合が存在し得、そ
の意味の特定のエラー・メツセージが発されてプログラ
マに対して潜在的問題を警告する。もし検査中の記述が
指標のセツティングを含まなければ、あるいは含むが前
の指標セツティングが実際に適法に使用されたならば、
モジュール内の次のテストを行うことができる。
次に、記述が与えられたレジスタをロードあるいは修飾
させるかどうかを判定するために照会が行われる。もし
そうであれば、前の命令も同じレジスタをロードあるい
は修飾したかどうかについて判定が行われ、もしそうで
あれば、レジスタ内容の介在使用がなされたかどうかの
判定がなされる。もし前の命令がレジスタをロードある
いは修飾したがその内容の介在使用が行われず、レジス
タが再びロードあるいは修飾されるならば、論理的な不
整合が存在し得、またその旨の特定の警告メツセージが
発されてプログラマに潜在的な問題を警告する。
もし検査中の記述がレジスタのローディングあるいは修
飾を生じないか、あるいは生じてもレジスタ内容が実際
に適法に使用されたならば、モジュールにおける次のテ
ストを行うことができる。
次に、もし検査中の記述が半分のレジスタを構成する直
接のオペランドあるいは修飾子を使用するならば、その
使用の妥当性についての判定が行われる。例えば、もし
前の動作の結果指定された半レジスタを強制的にクリア
したならば、これはおそらくは他の半レジスタを使用す
るプログラマの意図であったものであり、適当な!告メ
ツセージが発される。強制的なりリアはシフト、直接オ
ペランド・ロードあるいは論理的A N I)動作の結
果であり得る。
次に、テスト中の記述は、条件付き転送を呼出すかどう
かを判定するため調べられる。
もしそうでなければ、−続きの次のテストが行われる。
もしそうであれば、テスト中の指標が前の比較あるいは
ロード命令により影響を受けたかどうかについて判定が
行われる。
もし指標が影響を受けなかったならば、正しくないテス
トが行われている可能性があり、適当な警告メツセージ
が発される。
次に、この時修飾子あるいはオペランドとして使用され
るよう呼出されつつあるレジスタの内容を破壊したシス
テム・サービス機能が前に行われ、その後該レジスタが
再びロードされることがなかったかどうかの判定がなさ
れる。もしそうであれば、レジスタ内容が要求に対して
不当であり、レジスタの使用は正しくなく、警告メツセ
ージが発される。
次に、アドレス・フィールドあるいは修飾子フィールド
において記号が使用されたかどうかの判定が行われ、も
しそうであれば、記号が前に競合する文脈において現れ
たかどうかの判定が行われる。もし記号の使用が不適性
ならば、警告メツセージが生成される。
もし記号の使用が適正であれば、サブルーチンが呼出さ
れつつあるかどうかについて判定が行われる。もしそう
でなければ、検査中の記述は前の動作と矛盾しないと考
えることができ、次の記述を分析のため取り−しげるこ
とができる。
しかし、もしサブルーチンが呼出されつつあるならば、
これ以」二の分析が必要である。もしサブルーチンが前
に呼出されなかったならば、検査中の記述は前の動作と
矛盾しないと考えることができ、次の記述を分析のため
取り上げることができる。しかし、もしこのサブルーチ
ンが前に呼出されたならば、同じリンク・レジスタが使
用されたかどうかの判定が必要であり、もしそうであれ
ば、次の記述を呼出すことができるが、もしそうでなけ
れば、警告メツセージが発される。
第2図に示された本発明の実施例によれば、警告メツセ
ージの発生の都度、検査中のアセンブリ言語のソース・
コード・プログラム全体またはプログラム・モジュール
により、デバッグ・プログラムは直ちにオンの状態を続
け、第2図に示されるように次の記述を分析のため呼出
すことができる。このため、警告メツセージの全グルー
プを1つのグループとして見ることができ、ソース・コ
ードを適当に訂正するため、バグあるいは可能性のある
バグ間に相互関係があることを認識する。あるいはまた
、当業者は、また本プログラムにより検出し得る種類の
「残りの最初の」バグあるいは潜在的なバグがプログラ
マによってアドレス指定できるよう、各警告メツセージ
が発された後終了するようにその実行ができるようにデ
バッグ・プログラムが容易に改訂できることを理解しよ
う。しかし、経験によれば、第2図に示される作動モー
ドが選好されることが判る。
以−にの如く、本発明の原理は実施例において明瞭にな
ったであろうが、当業者には、これら原理から逸脱する
ことなく、特定の環境および作動要件に特に適合する本
発明の実施に際して用いられるプログラム構造の多くの
修正は明瞭であろう。
【図面の簡単な説明】
第1図は本発明が包含されるデバッグ・プログラムの一
般的なシーケンスを示す高レベルのフローチャート、お
よび第2図は本発明が包含されるデバッグ・モジュール
の構造を開示する更に詳細なフローチャートである。

Claims (1)

  1. 【特許請求の範囲】 1、正しくない文脈、制限、オペランド仕様等を含まな
    いアセンブリ言語の記述の分析により、潜在的なソース
    ・コード・エラーを識別するためのコンピュータ支援ソ
    フトウェア作成プロセスにおいて、 (A)開発中のプログラムのデバッグが行われつつある
    コンピュータ・システムにおいて、開発中のプログラム
    が最終的に使用されるコンピュータ・システムのアーキ
    テクチャのソフトウェア表現を確立し、 (B)分析のため開発中のプログラムの第1の記述をロ
    ーディングし、 (C)分析中の記述の機械レベル命令の実行をシミュレ
    ートし、 (D)前記命令のシミュレートされた実行の結果が前の
    シミュレートされた動作と矛盾するかどうかを判定し、 (E)もしステップ(D)においてなされた判定が、 1)ステップ(C)の結果が前のシミュ レートされた動作と矛盾すれば警告メッセージを発し、 2)ステップ(C)の結果が前のシミュ レートされた動作と矛盾しなければ、ステップ(F)に
    進み、 であれば、 (F)開発中のプログラムの次の記述を分析のためロー
    ディングし、 (G)ステップ(D)へ戻る ステップを含むことを特徴とするコンピュータ支援ソフ
    トウェア設計プロセス。 2、ステップ(D)内で、前の比較命令によりセットさ
    れる指標がテストあるいは記憶されなかったかどうかと
    、実行がシミュレートされる命令が指標を変更させるか
    どうかを判定するサブステップと、その肯定判定がステ
    ップ(E)1)を生じ、否定判定がステップ(E)2)
    を生じることとを含むことを特徴とする請求項1記載の
    コンピュータ支援ソフトウェア作成プロ セス。 3、ステップ(D)内で、実行がシミュレートされる命
    令が、前に修飾されたが修飾子として記憶あるいは使用
    されなかったレジスタをロードするかどうかを判定する
    サブステップと、その肯定判定がステップ(E)1)を
    生じ、否定判定がステップ(E)2)を生じることとを
    含むことを特徴とする請求項1記載のコンピュータ支援
    ソフトウェア作成プロセス。 4、ステップ(D)内で、実行がシミュレートされる命
    令が、強制クリアにより最後に影響を受けたレジスタ・
    セグメントをオペランド あるいは修飾子として用いるかどうかを判定するサブス
    テップと、その肯定判定がステップ(E)1)を生じ、
    否定判定がステップ(E)2)を生じることとを含むこ
    とを特徴とする請求項1記載のコンピュータ支援ソフト
    ウェア作成プロセス。 5、ステップ(D)内で、実行がシミュレートされる命
    令が、前の動作により影響を受け なかった指標に基く条件付き転送を試みるかどうかを判
    定するサブステップと、その肯定判定がステップ(E)
    1)を生じ、否定判定が ステップ(E)2)を生じることとを含むことを特徴と
    する請求項1記載のコンピュータ支援ソフトウェア作成
    プロセス。 6、ステップ(D)内で、実行がシミュレートされる命
    令が、システム・サービス機能により前に破壊されたレ
    ジスタを修飾子として使用しようと試みるかどうかを判
    定するサブステップと、その肯定判定がステップ(E)
    1)を生じ、否定判定がステップ(E)2)を生じるこ
    ととを含むことを特徴とする請求項1記載のコンピュー
    タ支援ソフトウェア作成プロセス。 7、ステップ(D)内で、実行がシミュレートされる命
    令が、異なる文脈において前に現れた記号をアドレス修
    飾の与えられた文脈において使用しようと試みるかどう
    かを判定するサブステップと、その肯定判定がステップ
    (E)1)を生じ、否定判定がステップ(E)2)を生
    じることとを含むことを特徴とする請求項1記載のコン
    ピュータ支援ソフトウェア作成プロ セス。 8、ステップ(D)内で、実行がシミュレートされる命
    令が、リンクのため与えられた標識レジスタを用いてサ
    ブルーチンを呼出すかどうかを判定するサブステップと
    、その肯定判定がステップ(E)1)を生じ、否定判定
    がステップ(E)2)を生じることとを含むことを特徴
    とする請求項1記載のコンピュータ支援ソフトウェア作
    成プロセス。 9、ステップ(E)1)の実施後終了する ステップを更に含むことを特徴とする請求項1記載のコ
    ンピュータ支援ソフトウェア作成プロセス。 10、ステップ(E)1)の実施後終了するステップを
    更に含むことを特徴とする請求項2記載のコンピュータ
    支援ソフトウェア作成プロセス。 11、ステップ(E)1)の実施後終了するステップを
    更に含むことを特徴とする請求項3記載のコンピュータ
    支援ソフトウェア作成プロセス。 12、ステップ(E)1)の実施後終了するステップを
    更に含むことを特徴とする請求項4記載のコンピュータ
    支援ソフトウェア作成プロセス。 13、ステップ(E)1)の実施後終了するステップを
    更に含むことを特徴とする請求項5記載のコンピュータ
    支援ソフトウェア作成プロセス。 14、ステップ(E)1)の実施後終了するステップを
    更に含むことを特徴とする請求項6記載のコンピュータ
    支援ソフトウェア作成プロセス。 15、ステップ(E)1)の実施後終了するステップを
    更に含むことを特徴とする請求項7記載のコンピュータ
    支援ソフトウェア作成プロセス。 16、ステップ(E)1)の実施後終了するステップを
    更に含むことを特徴とする請求項8記載のコンピュータ
    支援ソフトウエア作成プロセス。
JP2333406A 1989-11-29 1990-11-29 プログラム・エラー検出方法 Expired - Lifetime JPH0748182B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/443,680 US5132972A (en) 1989-11-29 1989-11-29 Assembly language programming potential error detection scheme sensing apparent inconsistency with a previous operation
US443680 1995-05-18

Publications (2)

Publication Number Publication Date
JPH03188535A true JPH03188535A (ja) 1991-08-16
JPH0748182B2 JPH0748182B2 (ja) 1995-05-24

Family

ID=23761776

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2333406A Expired - Lifetime JPH0748182B2 (ja) 1989-11-29 1990-11-29 プログラム・エラー検出方法

Country Status (6)

Country Link
US (1) US5132972A (ja)
EP (1) EP0430182B1 (ja)
JP (1) JPH0748182B2 (ja)
AU (1) AU629707B2 (ja)
CA (1) CA2030227C (ja)
DE (1) DE69026208T2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450575A (en) * 1991-03-07 1995-09-12 Digital Equipment Corporation Use of stack depth to identify machine code mistakes
US5193180A (en) * 1991-06-21 1993-03-09 Pure Software Inc. System for modifying relocatable object code files to monitor accesses to dynamically allocated memory
FR2718868B1 (fr) * 1994-04-18 1996-05-31 Bull Sa Procédé de détection d'interblocages dans les systèmes multiprocesseurs à mémoire partagée.
US5613063A (en) * 1994-07-01 1997-03-18 Digital Equipment Corporation Method and apparatus for checking validity of memory operations
JPH08185326A (ja) * 1994-12-28 1996-07-16 Fujitsu Ltd インタープリタ言語処理装置
US5699507A (en) * 1995-01-17 1997-12-16 Lucent Technologies Inc. Method of identifying similarities in code segments
JP2850808B2 (ja) * 1995-10-31 1999-01-27 日本電気株式会社 データ処理装置およびデータ処理方法
US5805893A (en) * 1996-03-01 1998-09-08 Electronic Data Systems Corporation Assembly language program converter
US5854924A (en) * 1996-08-08 1998-12-29 Globetrotter Software, Inc. Static debugging tool and method
DE19731733C1 (de) * 1997-07-23 1998-10-01 Siemens Nixdorf Inf Syst Verfahren zum Testen eines Assemblerprogramms auf Portabilität
US6314557B1 (en) * 1998-12-14 2001-11-06 Infineon Technologies Development Center Tel Aviv Ltd Hybrid computer programming environment
AU3889200A (en) * 1999-03-15 2000-10-04 Smartsan Systems, Inc. System and method of event management and early fault detection
US6675295B1 (en) * 2000-06-19 2004-01-06 Microsoft Corporation Method and computer system for detecting and correcting a failure in a computer application program during startup
US7284274B1 (en) * 2001-01-18 2007-10-16 Cigital, Inc. System and method for identifying and eliminating vulnerabilities in computer software applications
US7290174B1 (en) * 2003-12-03 2007-10-30 Altera Corporation Methods and apparatus for generating test instruction sequences
US8959493B2 (en) 2011-06-27 2015-02-17 International Business Machines Corporation Using range validation in assembly language programming
WO2021149113A1 (ja) * 2020-01-20 2021-07-29 富士通株式会社 プロセッサ、シミュレータプログラム、アセンブラプログラム、及び情報処理プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63304336A (ja) * 1987-06-04 1988-12-12 Nec Corp 計算機言語記述の矛盾摘出解消方式
JPH01307837A (ja) * 1988-06-06 1989-12-12 Fuji Xerox Co Ltd Mpuシミュレーション方法及びmpuシミュレータ

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61110240A (ja) * 1984-10-31 1986-05-28 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 最適化コンパイラ
US5182807A (en) * 1987-12-18 1993-01-26 Nec Corporation Assembler system for determining when to compile source code modules

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63304336A (ja) * 1987-06-04 1988-12-12 Nec Corp 計算機言語記述の矛盾摘出解消方式
JPH01307837A (ja) * 1988-06-06 1989-12-12 Fuji Xerox Co Ltd Mpuシミュレーション方法及びmpuシミュレータ

Also Published As

Publication number Publication date
EP0430182B1 (en) 1996-03-27
CA2030227A1 (en) 1991-05-30
DE69026208D1 (de) 1996-05-02
US5132972A (en) 1992-07-21
EP0430182A3 (en) 1992-03-11
DE69026208T2 (de) 1996-12-05
EP0430182A2 (en) 1991-06-05
AU6679990A (en) 1991-06-06
JPH0748182B2 (ja) 1995-05-24
AU629707B2 (en) 1992-10-08
CA2030227C (en) 1994-07-05

Similar Documents

Publication Publication Date Title
US5778230A (en) Goal directed object-oriented debugging system
US8266608B2 (en) Post-compile instrumentation of object code for generating execution trace data
US9152531B2 (en) Post-compile instrumentation of object code for generating execution trace data
US5956479A (en) Demand based generation of symbolic information
US6430741B1 (en) System and method for data coverage analysis of a computer program
US7478367B2 (en) Dynamic source code analyzer
EP0753814B1 (en) Determining dynamic properties of programs
JPH03188535A (ja) プログラム・エラー検出方法
US6240545B1 (en) Setting instance breakpoints in object oriented computer programs
US8448152B2 (en) High-level language, architecture-independent probe program compiler
JPH08504526A (ja) コンピュータにてオブジェクト指向プログラムの少なくとも1つのクラスのテストをする方法
US6493834B1 (en) Apparatus and method for dynamically defining exception handlers in a debugger
US6738778B1 (en) Method and apparatus for monitoring the execution of a program
US20080127118A1 (en) Method and system for dynamic patching of software
CN113836023B (zh) 一种基于体系结构交叉检查的编译器安全性测试方法
EP0801348A1 (en) Method of monitoring the operation of a computer
Win Theorem-proving distributed algorithms with dynamic analysis
US5029170A (en) Assembly language programming potential error detection scheme which recognizes incorrect symbolic or literal address constructs
Nielsen Static Analysis for Node. js
JPH01177165A (ja) 配列の定義/引用関係検査方式
Allevato et al. Dereferee: Instrumenting C++ pointers with meaningful runtime diagnostics
US7627859B2 (en) Method for configuring non-script language library files to be run as scripts
Charlton et al. Program monitoring and analysis: Software structures and architectural support
JPH05250221A (ja) シミュレータ実行方式
JPH04358232A (ja) 情報処理装置の機能試験方法