Wpis z mikrobloga

Spójrzcie mireczki na dane jakie wypluwa gcc, to rozłożony na czynniki pierwsze program asm z opisem sekcji itd itp.
Pierwszy przypis dotyczy kodu armnoneeabigcc, drugi armnoneeabig++. Różnica jest, poza tym, że w rozmiarze, to w aligin.
Moje pytanie jest takie - gdzie to ustawić? make jest generowany automatycznie przez środowisko. Pewnie gdzieś brakuje dyrektywy
PRAGMA_PACK(ALIGIN) albo coś w ten deseń.
Tylko co gdzie i jak?
#jezykc #cplusplus #armiasamoyedow

w ogóle podczas sesji z debuerem kod działa właściwie, ale jak uruchomię z uC to nic się nie dzieje - to znaczy coś gdzieś po drodze nie działa. Może to być kwestia powstających offsetów w adresach z powodu złego wyrównania pamięci.

Idx Name Size VMA LMA File off Algn
0 .text 000075a4 00400000 00400000 00010000 2**6

Idx Name Size VMA LMA File off Algn
0 .text 000033ec 00400000 00400000 00010000 2**2
  • 2