On Mar 1, 2012, at 9:10 AM, Richard Zetterberg wrote:

> int main(void)
> {
>        DDRB |= (1 << PB0);
>  84:  20 9a           sbi     0x04, 0 ; 4
>        turn_on_pb();
>  86:  0e 94 40 00     call    0x80    ; 0x80 <turn_on_pb>
>  8a:  ff cf           rjmp    .-2             ; 0x8a <main+0x6>
> 
> 0000008c <_exit>:
>  8c:  f8 94           cli
> 
> 0000008e <__stop_program>:
>  8e:  ff cf           rjmp    .-2             ; 0x8e <__stop_program>

Pardon me for tuning in late but since when did main() start ending with an 
"rjmp .-2" infinite loop as shown at 0x8a above? Is supposed to ret to caller 
which then calls _exit or perhaps calls something else. But my point is that 
int main() is a function that is supposed to return to caller.

--
David Kelly N4HHE, dke...@hiwaay.net
============================================================
Whom computers would destroy, they must first drive mad.




_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
https://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to