XC32 a pole v RAM vetsi velikosti

Miroslav Mraz mrazik na volny.cz
Neděle Březen 15 21:39:58 CET 2020


Máte asi pravdu, že pes je zakopán jinde než v přetečení sekce, já jsem 
na to upozornil jen proto, že správně napsaný linker skript tyto 
velikosti pro daný typ procesoru ohlídá. Obvykle i rezervuje nějaké 
místo i na zásobník a haldu. Je prostě dobré vědět jak to funguje a jak 
si to ohnout k obrazu svému. Třeba na AVR do toho není potřeba moc 
šťourat, skripty jsou pro jednotlivé procesory připraveny, u ARM už je 
lepší tohle znát, při velkém množství typů můžou být paměťové prostory 
blbě definovány. Někdy se i hodí umět definovat vlastní sekce.

Mrazík

Dne 15. 03. 20 v 21:19 Jan Waclawek napsal(a):
>> Ale zase asi
>> nebude vypisovat pøeteèení sekce.
> 
> Toto nie je uplne klasicke pretecenie sekcie. Ide o to, ze linker pre MIPS
> spocita niektore section ktore maju patrit do tej skupiny "small" ci
> "gp-relative". Neviem, ake su presne pravidla pre toto, v dokumentacii som
> nic nenasiel a "skutocnu dokumentaciu" sa mi skumat naozaj nechce... (no
> dobre, trochu som preskumal [binutils]\bfd\elfxx-mips.c, zda sa, ze su to
> .lit4, .lit8, .sbss a .sdata - a tomu viacmenej zodpoveda aj obsah mapfile
> ktory mi pan kolega LK poslal sukromne, ale hlbsie uz ozaj nemam chut ist)
> 
> Zda sa, ze ten -Gxx je v tomto klucovy a musi byt predany vsetkym zlozkam,
> t.j. kompilatoru, asembleru (ak je explicitne pouzity) a aj linkeru - je o
> tom zmienka v dokumentacii k as
> https://sourceware.org/binutils/docs-2.24/as/MIPS-Small-Data.html#MIPS-Small-Data
> 
> Tych suvisiacich prepinacov v kompilatore je trocha viac
> https://gcc.gnu.org/onlinedocs/gcc-4.8.5/gcc/MIPS-Options.html#index-G-1791
> 
> Ja by som skusil ten -G 0.
> 
> wek
> 


Další informace o konferenci Hw-list