Le 02/12/2010 19:51, Wolfgang Denk a écrit : > Dear Albert ARIBAUD, > > In message<4cf7c7f4.6030...@free.fr> you wrote: >> >>> Well, an u8 is as good a data type as any other. The available range >>> of 0...255 seems more than sufficient to store the needed >>> information, so why should I waste 4 bytes of storage when a single >>> byte is sufficient as well? >> >> You don't necessarily use only one byte when declaring an u8 instead of >> an int, because the next declaration may have alignment requirements >> that will cause the compiler to skip bytes after the u8. Besides, u8 is > > The compiler / linker may (or may not) optimize this and collect > variables of similar alignment. An "int foo;" is likely to end in > .bss segment, while an "char foo;" will probably show up in .sbss - I > don;t know how good or bad the current situation for ARM is, but I'm > sure it is improving (look for example at all the microoptimizations > done by Linaro).
There is only a single .bss for ARM. >> not "as good a data type" as any other, it is a specific data type >> whereas 'int' is the native data type of the platform, supposed to be >> the most natural to deal with for the cpu -- 32-bit for an ARM. > > Can an ARM CPU not read1s and write single bytes, too? It can, but for many of its operations, it can only work with 32-bit data. > Let's stop this here. Understood. > Best regards, > > Wolfgang Denk Amicalement, -- Albert. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot