On 09/ 2/13 01:20 PM, Sebastian Huber wrote:
0x0000e576 <+10>: bl 0xe4d8 <_Chain_Head>
0x0000e57a <+14>: str r0, [r7, #20]
0x0000e57c <+16>: ldr r3, [r7, #20]
0x0000e57e <+18>: ldr r3, [r3, #0]

Above you read head->next.

0x0000e580 <+20>: str r3, [r7, #16]
0x0000e582 <+22>: ldr r3, [r7, #16]
0x0000e584 <+24>: ldr r3, [r3, #0]

Above you read head->next->next;

I think its the instruction above which fails since r3 has a bogus value
of 0x1a010003. It looks like that the chain is corrupt.

Yes, it also looks so from C point of view and while debugging C code. The question is why. Now I'm trying to duplicate this issue on vanilla STM32F4 BSP from RTEMS HEAD and with the latest toolchain compiled on Ubuntu. Honestly speaking this combination provides completely different hello example -- I mean binary behaves in different way so I'll need to add logic analyser as I don't have logic shifter hardware connected to USART 3 which is used by default on STM32F4 BSP.

Anyway, I'll keep you posted about the progress...

Thanks for your help!
Karel

_______________________________________________
rtems-devel mailing list
rtems-devel@rtems.org
http://www.rtems.org/mailman/listinfo/rtems-devel

Reply via email to