arm-gcc release

Michal Grunt michal.grunt na vynet.cz
Pátek Říjen 4 16:12:28 CEST 2013


Popeláře nastavím. Použití -Os si asi zatím rozmyslím. Občas mám problém napsat program tak, aby to pochopil i procesor :-) a s -Os bych si asi zadělal na další problémy... Nebo je nějaké doporučení (mimo ty co jste popsal) jak program napsat tak, aby se "nezoptimalizovala" i jeho funkčnost?

Michal Grunt

________________________________________
Odesílate: hw-list-bounces na list.hw.cz [hw-list-bounces na list.hw.cz] za uživatele Miroslav Mraz [mraz na seznam.cz]
Odesláno: 4. října 2013 14:49
To: HW-news
Předmět: Re: arm-gcc release

Ještě bych přidal pro kompilaci -ffunction-sections -fdata-sections a
pro linkování -Wl,--gc-sections. Protože pokud používáte
-DUSE_STDPERIPH_DRIVER, pak ve výsledném .hex zbude i kód (data), který
procesor vůbec nepoužívá. Takhle to ten popelář linkeru odstraní.
Na to -Os trochu pozor - globální proměnné, které sdílí např. main() a
přerušení musí být deklarovány jako volatile. Ale stejně tak třeba jen
řídící proměnná nějakého zpožďovacího cyklu - ty optimalizace jsou
poměrně zrádné. Jinak se můžete dočkat nepříjemného překvapení.

Mrazík

On 10/04/2013 01:14 PM, Ladislav Vaiz wrote:
> Misto -O0 dejte -Os
> L.
>
> On Fri, 4 Oct 2013, Michal Grunt wrote:
>
>> Může mi někdo poradit, co nepatří za přepínače do "release" makefile?
>> Aby měl výsledný hex co nejmenší velikost...
>>
>> -IC:\xxxxx - představuje několik adresářů, zkráceno pro přehlednost
>> na jeden
>>
>> arm-none-eabi-gcc -DUSE_STDPERIPH_DRIVER -DSTM32F0XX
>> -DRUN_FROM_FLASH=1 -IC:\xxxxx -O0 -Wall
>> -Wa,-adhlns="system_stm32f0xx.o.lst" -c -fomit-frame-pointer
>> -fverbose-asm -MMD -MP -MF"system_stm32f0xx.d"
>> -MT"system_stm32f0xx.d" -mcpu=cortex-m0 -mthumb -o
>> "system_stm32f0xx.o" "../system_stm32f0xx.c"
>>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list

_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list