------- Comment #1 from eric dot weddington at atmel dot com 2010-03-08 20:56 ------- I cannot reproduce the problem.
Used this command line: avr-gcc -save-temps -O0 -mmcu=atmega164p -c test.c -o test.o Generated this assembly: .file "test.c" __SREG__ = 0x3f __SP_H__ = 0x3e __SP_L__ = 0x3d __CCP__ = 0x34 __tmp_reg__ = 0 __zero_reg__ = 1 .text .global Usart0AtModeSkipLine .type Usart0AtModeSkipLine, @function Usart0AtModeSkipLine: push r29 push r28 push __tmp_reg__ in r28,__SP_L__ in r29,__SP_H__ /* prologue: function */ /* frame size = 1 */ std Y+1,__zero_reg__ lds r24,mUsart0BufferReadPtr std Y+1,r24 lds r24,mUsart0BufferReadPtr std Y+1,r24 lds r24,mUsart0BufferReadPtr std Y+1,r24 /* epilogue start */ pop __tmp_reg__ pop r28 pop r29 ret .size Usart0AtModeSkipLine, .-Usart0AtModeSkipLine .comm mUsart0BufferReadPtr,1,1 .global __do_clear_bss and the object code disassembly was this: test.o: file format elf32-avr Disassembly of section .text: 00000000 <Usart0AtModeSkipLine>: 0: df 93 push r29 2: cf 93 push r28 4: 0f 92 push r0 6: cd b7 in r28, 0x3d ; 61 8: de b7 in r29, 0x3e ; 62 a: 19 82 std Y+1, r1 ; 0x01 c: 80 91 00 00 lds r24, 0x0000 10: 89 83 std Y+1, r24 ; 0x01 12: 80 91 00 00 lds r24, 0x0000 16: 89 83 std Y+1, r24 ; 0x01 18: 80 91 00 00 lds r24, 0x0000 1c: 89 83 std Y+1, r24 ; 0x01 1e: 0f 90 pop r0 20: cf 91 pop r28 22: df 91 pop r29 24: 08 95 ret So we need a complete test case, along with a command line that can reproduce the problem. -- eric dot weddington at atmel dot com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43104