Vkládání konstant

Jan Waclawek wek@evona.sk
Středa Červen 6 14:31:32 CEST 2007


Trocha sme to predebatovali s kolegami, a vysvitlo, ze avr-gcc (co je 
prekladac balika WinAVR) je v tomto tak trocha kripel. Na rozdiel od 
ostatnych prekladacov priamo urcenych pre jednocipy totiz nedokaze 
priamo pristupit k takymto premennym (tie pridavane atributy tam len 
sposobia relokaciu premennej do specialneho segmentu, t.j. v konecnom 
dosledku je to len symbol pre linker). Dosledkom je, ze je potrebne vzdy 
pouzit nejaku spristupnovaciu funkciu, alebo, ako v tomto pripade, 
specialnu verziu funkcie (tu: printf).

Pricinou zrejme je, ze gcc je primarne urceny pre "velke" procesory 
(ktore aj ked su vo forme jednocipu, su navrhovane so sirokou adresou a 
teda homogennym pristupom ku vsetkym formam pamati).

Bohuzial, vyvojova vetva AVR v SDCC "zakrpatela", a tak kedze avr-gcc je 
jediny open source a free C-prekladac pre AVR, tento nedostatok (ako aj 
ine, napr. totalne chaoticku dokumentaciu) treba strpiet...

wek



Další informace o konferenci Hw-list