Open3
lldbのあれやこれや
ChatGPT大先生に教えてもらったことを主に転記してくスレ
デバッグ対象にCLI引数を渡して実行
lldb <デバッグ対象> -- <引数を並べてく>
ファイルパスと行番号を指定してブレークポイントをセット
break set -f <パス> -l <行番号>
watchpointで変数を監視する。
まず監視したい変数が拝める箇所にブレークポイントをセットし、実行する。
次いで、ブレークしたらwatchpoint
を仕掛ける
watchpoint set expression -w write -s 8 -- &<変数>
-
&
をつけて変数のアドレスを渡す必要があることに注意 -
-w
は変数が書き換えられたら止まる指定 -
-s
はマスク。変数の開始アドレスからの指定バイトを監視対象とする指定
アセンブリのダンプ
disassemble -n <シンボル名> -c <行数>
または
disassemble -s <アドレス> -c <行数>
アドレスはbt
でバックトレース出すと今の実行アドレスわかるからそこを基準に。
遡る場合もテキトーに引いて指定すればいい感じにダンプしてくれる気がする。
レジスターを覗く
register read <レジスター名>
例:
register read rbp