たとえば、GDBでブレークポイントをより簡単に識別できるようにするために、GDBでブレークポイントにラベルを付ける/名前を付ける方法はありますinfo b
か?もしそうなら、どのように?
質問する
2094 次
2 に答える
6
いいえ、これを行う方法はありません。
于 2013-03-23T02:12:00.090 に答える
3
これはの出力には役立ちませんがinfo b
、後でコマンドでブレークポイントを参照する必要がある他の目的では、最後のブレークポイントのブレークポイント番号を$bpnum
別の便利な変数に格納できます。例:
b foo.c:123
set $im_a_breakpoint = $bpnum
# ... set some more breakpoints and do some other stuff ...
disable $im_a_breakpoint
さらなる例として、私は現在このパターンをタスクに使用しています。JITによって発行されたコードで通常のgdbブレークポイントを使用しています。これは、gdbが変更するため、コードが実際に発行された後にアドレスにブレークポイントを設定する必要があります。コード。commands
この目的のために、私は実際にそれ自身のブロック内から初期設定ブレークポイントを無効にします:
set $cur_stop_point = 0x41aaa
b basic_jit_cache::copy_block if ((uint32_t)this->code_ptr()) > ($gencode + $cur_stop_point)
set $cur_stop_point_setup_bp = $bpnum
commands
b *($gencode + $cur_stop_point)
disable $cur_stop_point_setup_bp
cont
end
于 2020-03-04T06:02:15.630 に答える