UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 22796

11.1 EDK - GDB での MicroBlaze に対するインライン (ソフトウェア) ブレークポイントのサポートについて

説明

キーワード : s/w, h/w, hardware, break, point, debug, XMD, ソフトウェア, ハードウェア, ブレークポイント, デバッグ

MicroBlaze に対して、GDB でブレークポイントを挿入せずにコードにブレークポイントを挿入するにはどうしたらよいですか。

ソリューション

インライン ソフトウェア ブレークポイントはサポートされていません。ただし、次の方法で同様の機能を達成できます。

1. 次のように、int3() という名前の単純な関数を記述します。

void int3() {
static int dummy; // to keep gcc from optimizing away code
dummy++;
}


2. メインのソフトウェア プログラムで、デバッガ (XMD/GDB) を停止する必要のある部分で int3() を呼び出します。

int main() {
...
int3(); // software breakpoint
...
}


3. XMD から bps int3 コマンドを使用するか GDB から break int3 コマンドを使用して、int3() 関数に 1 つのブレークポイントを設定します。

a. GDB で、[File] -> [Target Settings] をクリックします。
b. [Set Breakpoint] をオンにし、その右側のボックスに「int3」と入力します。
c. [OK] をクリックします。

int3() が呼び出されると、デバッガが停止します。

ハードウェア ブレークポイントとソフトウェア ブレークポイントの違いについては、(Xilinx Answer 21330) を参照してください。


AR# 22796
日付 12/15/2012
ステータス アクティブ
種類 一般
このページをブックマークに追加