3.2 アプリケーションの実行、停止、およびステップ実行

DS-5デバッガ は、ソースまたは命令レベルで順に実行、停止、およびステップ実行することによって、アプリケーションの実行を制御します。

ターゲットに接続したら、ステッピングツールバーのオプション、デバッグ制御ビューにあるステップツールバーを使用して、アプリケーションを実行、中断、およびステップ実行することができます。詳細については、「 デバッグ制御 」を参照して下さい。

また、コマンドビューを使用して、コマンドの実行制御グループを入力して、アプリケーションの実行を制御することができます。

図 3-1 [Debug Control]ビュー
[Debug Control]ビュー


注:

  • ソースレベルのステップ実行のためのコマンドを使用するには、デバッグ情報を使用してコードをコンパイルする必要があります。デフォルトで、デバッグ情報を持たない関数に対するソースレベルの呼び出しはステップオーバーされます。デフォルト設定を変更するには、 set step-mode コマンドを使用します。

  • ソースレベルでステップ実行する場合は、デバッガが一時的なブレークポイントを使用して特定の場所で実行を停止することに注意する必要があります。これらの一時的なブレークポイントには、ハードウェアブレークポイントを使用することが必要となる場合があります。このことは、ROM またはフラッシュに格納されたコードをステップ実行する場合は特に当てはまります。使用可能なハードウェアブレークポイントリソースが不足している場合は、デバッガによってエラーメッセージが表示されます。

  • マルチコアターゲットのステップ実行は、SMP/AMP およびデバッガの設定に左右されます。詳細については、「概要:マルチコア(SMP および AMP)のデバッグ、big.LITTLE、およびマルチクラスタターゲット」を参照して下さい。

アプリケーションをステップ実行する方法はいくつかあります。選択できるステップ実行は以下のとおりです。

  • ソースレベルまたは命令レベル。

    ソースレベルのデバッグでは、ソースコードの 1 行または式をステップスルーします。命令レベルのデバッグでは、1 つのマシン命令をステップスルーします。ソースと命令レベルのデバッグモード間で切り替えを行うには、ツールバーにある [ステップ実行モード]ボタンを使用します。

  • すべての関数呼び出しをステップ実行、ステップオーバー、またはステップアウトする。

    ソースが、コマンドの実行制御グループを使用してデバッグ情報と一緒にコンパイルされている場合は、関数をステップイン、ステップスルー、またはステップアウトすることができます。

  • ソースコードの単一行に含まれている複数のステートメントをステップ実行する(for ループの場合など)

ツールバーオプション

[アプリケーション実行を継続] - 実行を開始または再開するためにクリック。

[アプリケーション実行を中断] - 実行を一時停止するためにクリック。

[ステップスルー] - コードをステップスルーするためにクリック。

[ステップオーバー] - コードをステップオーバーするためにクリック。

[ステップアウト] - 選択されたスタックフレームの終了後にコードの次の行を継続して実行するためにクリック。

[ステップ実行モードの切り替え] - ソース行と命令の間でステップ実行モードを変更するためにクリック。

アプリケーションのリワインド特定のオプション:

逆方向にアプリケーションの実行を継続 - コードを逆方向に継続して実行するためにクリック。

[逆方向ステップ] - コードを逆方向にステップ実行するためにクリック。

[逆方向ステップオーバー] - コードのラインを逆方向にステップオーバーするためにクリック。

[逆方向ステップアウト] - 選択されたスタックフレームの終了後にコードの次のラインを継続して逆方向に実行するためにクリック。

例 3-1 ステップコマンドのサンプル

指定した回数ステップ実行するには、コマンドビューを使用して、回数を表す数値を指定して、ステップ実行コマンドのいずれかを手動で実行する必要があります。

例えば、

steps 5                            # Execute five source statements
stepi 5                            # Execute five instructions

詳細については、「 コマンドビュー」を参照して下さい。

非機密扱いPDF file icon PDF 版ARM DUI0446ZJ
Copyright © 2010–2016 ARM.All rights reserved.