Gast
#412086
ich habe gerade ein Projekt mit dem Bootloader von P.Fleury wieder rausgekramt und nochmal die letzte Version von seiner Homepage geladen. Der Bootloader passt in 1 KB rein und ich habe im Makefile von MCU=mega8 auf meinen mega32 umgestellt. Und schon wurde der Code von 1016 auf 1030 Bytes vergrössert. Habe dann noch den gcc 4.1.1 aktiviert, gleicher Effekt. Ein diff der generierten .lss files zeigt schnell das beim mega32 die rcalls durch calls ersetzt wurden und dort die zusätzlichen Bytes anfallen. Da ist der gcc ein bischen 'dumm', der Befehl müsste doch von der Sprunglänge und nicht vom Device abhängen? Beim mega8 ist es natürlich einfach, da sind alle Ziele relativ zu erreichen, aber kann man den gcc auch dazu bewegen für den mega32 relative Sprünge zu nutzen?