assembly 在gdb tui中可以配置哪些寄存器(精确地)以及如何显示?

elcex8rz  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(126)

我已经使用aarch 64-none-elf-gdb调试qemu上运行的ARM代码有一段时间了(都是在MacOS Intel上,但现在是M3上)。
然而,最近gdb已经显示了(显然)随机的寄存器集:有时是x 0-x22和一些系统寄存器,有时是x 0-x30和SP等,有时是很多系统寄存器,有时只有几个(而不是那些已经改变的,我需要的)。
现在我使用的是tui模式,这基本上是可以的--但是有 * 太多 * 寄存器(而且我不想要的十进制值与十六进制值一起打印沿着)。

是否有方法配置显示哪些寄存器?

例如,我想要(仅限十六进制):
x0-x30、SP、PC、ESR_EL1、ELR_EL1、FAR_EL1、CPSR、SPSR_EL1、CNTP_CVAL_EL0等。
不是
ID_AA64ISAR5_EL1_RESERVED、VMPIDR_EL2和大多数其他207系统寄存器!

sz81bmfz

sz81bmfz1#

看起来我需要修补Qemu代码,特别是:target/arm中的文件。
this question的答案指明了方向。

相关问题