zahada delky struktury GCC
Jan Waclawek
konfera na efton.sk
Pondělí Březen 11 20:46:28 CET 2024
errata:
...double vnuti alignment 8 pre kazdy prvok _struct_...
tiez tam platia tie zahadne pravidla propagacie alignmentu, podobne ako s
tym packed.
wek
----- Original Message ---------------
[...]
>
>Dovod je, ze ten double vnuti alignment 8 pre kazdy prvok pola, t.j. sa
>bude kazdy prvok zarovnavat na ofset delitelny bezo zvysku 8. 1020 taky
>nie je, takze za ten union sa pridaju 4 padding byty aby crc32 vyslo na
>offset 1024, no a on sam ma 4 byty a ze neho sa daju este dalsie 4 padding
>bity.
>
>Inaksie povedane, bez packingu to nevlozite s double tak, aby bolo to crc32
>na poslednych 4 bytoch. Da sa ba[] urobit dlhy 1016, a to crc proste bude
>8 bytov od konca, t.j. to bude binarne nekompatibilne s tou verziou bez
>double.
>
>Ale inak je to takmer jedno, lebo aj tak su vsetky polia rozposuvane oproti
>tej verzii bez double presne kvoli tomu zarovnaniu na 8 byte.
>
>wek
Další informace o konferenci Hw-list