laserovy dalkomer

Miroslav Mraz mrazik na volny.cz
Pátek Leden 17 22:13:13 CET 2025


IAR neznám, ale vím, že jde při troše úsilí vytvořit kód, který i s 
optimalizací přeloží g++ násobně větší (jak RAM tak flash) než clang. 
Stačí použít lookup tabulku nějaké složitější analytické funkce, kterou 
předpočítám konstantním výrazem. Zatímco clang to spočte při překladu a 
výsledek uloží do flash, tohle g++ neumí, počítá to za běhu, při startu 
a ukládá do RAM, takže fakticky jen přidává spoustu balastu. V čistém C 
to může být podobné, ale moc si neumím představit jak.

Mrazík

On 17. 01. 25 17:25, Vojtěch Petrucha wrote:
> zdravim,
> ... 
> akorát to vyžere skoro celou RAM i FLASH (87.3% z 32kB a 96.5% z 4kB RAM)
> 
> teď koukám, že i když mám optimalizaci O3 nebo Os, debug  none, tak je 
> mnou zkompilovaný kód výrazně delší, než binárky vystavene autorem na 
> githubu, vytvořené v IAR 7.50 (28kB místo 16kB), což nepotěší. na fóru 
> jsem našel info, že je to normální, i když někdo z ST tam psal, že by 
> odchylka měla být výrazně menší...?
> 
> 


Další informace o konferenci Hw-list