Slide 19
Slide 19 text
hardware breakpointの実現⽅法(A64)
• セット⼿順
• DBGBVRレジスタにbreakpointを仕込みたいアドレスをセットする
• DBGBCRレジスタで以下を設定する
• breakpoint exceptionを起こすモード(SSC, HMC, PMC)
• exceptionを起こす命令の種類(BAS)
• breakpointの有効化(E)
• 詳細は参考資料※を参照
• break時
• debug stateに⼊る
• 解除⽅法
• DBGBCRのEフラグを0にして無効化
20
※参考資料
ARM DDI 0487D.a
D2.9.3 Execution conditions for which a breakpoint generates Breakpoint exceptions
G8.3.2 DBGBCR, Debug Breakpoint Control Registers, n = 0 ‒ 15
OpenOCD
https://github.com/probe-rs/probe-rs/blob/578b8b247dd268eafe223d364a1421cf2fde1d7c/probe-
rs/src/architecture/arm/core/armv8a.rs#L1059-L1080
probe-rs
https://github.com/openocd-org/openocd/blob/master/src/target/aarch64.c#L1236-L1275