0
我正在使用德州儀器Hercules(Cortex-R4F)處理器的gdb(arm-none-eabi)。我使用的是德州儀器公司的XDS代理作爲遠程GDB服務器GDB如何確定ARM體系結構
在GDB運行
target remote ip:port
後,GDB將與XDS GDBSERVER連接。然後我就可以打印寄存器
info all-registers
它讓我看到CPU寄存器,但是這導致我也F7和FPA寄存器的結論是,CPU有一個浮點協處理器(FPA)。但情況並非如此。處理器有vfpv3。所以GDB使用錯誤的寄存器定義導致問題。
我試圖通過設置
set debug remote 1
找到由XDS GDB服務器發送的數據包的信息,但找不到任何信息。 GDB如何確定要使用的寄存器定義?
更新: 我發現集架構命令:
set architecture
>Requires an argument. Valid arguments are arm, armv2, armv2a, armv3, armv3m, armv4, armv4t, armv5, armv5t, armv5te, xscale, ep9312, iwmmxt, iwmmxt2, arm_any, auto.
的Cortex-R4F是ARMv7的與VFPv3的。我該如何設置它?
首先像編譯器,彙編器,鏈接器它爲ARM編譯。但除此之外,它可能是通用的,除非您明確告訴它具體是什麼。舊的武器沒有CPUID的東西,新的那樣做,所以它不能檢測。你的命令行是什麼,有沒有指定架構的選項? –
我不希望知道讓我們這樣說。 –
或以另一種方式說。就像工具鏈一樣,人類知道,但工具可能不是,所以人類告訴工具... –