Jeeni & ARM720T with GDB
Grant Edwards
grante@visi.com
Wed Nov 22 06:36:00 GMT 2000
On Wed, Nov 22, 2000 at 10:35:04AM -0000, danish iftikhar wrote:
> After load Pc shows the address : 0x8060
>
> The start uo code is :
> (gdb) x/30i $pc
> 0x8060 <warm_reset>: mrs r7, cpsr
> 0x8064 <warm_reset+4>: and r7, r7, #31 ; 0x1f
> 0x8068 <warm_reset+8>: cmp r7, #19 ; 0x13
> 0x806c <warm_reset+12>: beq 0x80a0 <start>
That looks right.
> i am not able to do step or cont but using stepi i went through this
> startup function . It seems to loop around between 0x815c & 0x8164 and is
> not going ahead of that .
> the code at this address is as follows :
>
> 0x8154 <start+180>: cmp r1, r2
> - 0x8158 <start+184>: beq 0x8168 <start+200>
> - 0x815c <start+188>: str r0, [r1], #4
> - 0x8160 <start+192>: cmp r1, r2
> - 0x8164 <start+196>: bne 0x815c <start+188>
> - 0x8168 <start+200>: bl 0x1f194 <hal_hardware_init>
> - 0x816c <start+204>: bl 0x1ee10
> <cyg_hal_invoke_constructors>
> - 0x8170 <start+208>: bl 0x1f358 <cyg_start>
It looks to me like the debugger and emulator are working fine.
The loop you're looking at is zeroing out the bss section. R2
should contain the address of the end of bss, and R1 should
start at the beginning of bss and increment through the whole
section. This loop will probably execute tens of thousands of
times, so you can get pretty bored doing a stepi...
Do the addresses in R1 and R2 correspond to your bss section?
Can you set a breakpoint immediately following the loop and do
a cont?
--
Grant Edwards
grante@visi.com
More information about the Gdb
mailing list