From: Weddington, E. <Eri...@at...> - 2009-12-09 03:04:47
|
> -----Original Message----- > From: John Myers [mailto:ato...@gm...] > Sent: Tuesday, December 08, 2009 6:46 PM > To: Weddington, Eric > Cc: avr...@li... > Subject: Re: [avr-llvm-devel] Windows build > > > > The redudant mov is gone now. So it looks like whatever they > changed in the LLVM trunk fixed it. That's great! Question: Is the assembler output of llvm supposed to closely match the assembler output of avr-gcc? Is that what we're aiming for? > C:\_projects_\build_llvm\bin\Debug>llc.exe -O0 -o - > -filetype=asm -mcpu=atmega128 reti8.ll > .file "reti8.ll" > > .text > .align 16 > .global func > .type func,@function > func: > # BB#0: > ldi r24, #1 > ret > .size func, .-func If so, then we need to drop the .align directive above. This is the equivalent from avr-gcc: .file "test.c" __SREG__ = 0x3f __SP_H__ = 0x3e __SP_L__ = 0x3d __CCP__ = 0x34 __tmp_reg__ = 0 __zero_reg__ = 1 .text .global func .type func, @function func: /* prologue: function */ /* frame size = 0 */ ldi r24,lo8(1) /* epilogue start */ ret .size func, .-func |