[U-Boot] [PATCH v4 2/2] NS16550: buffer reads
Simon Glass
sjg at chromium.org
Mon Oct 17 18:25:37 CEST 2011
Hi Wolfgang,
On Mon, Oct 17, 2011 at 4:08 AM, Wolfgang Denk <wd at denx.de> wrote:
> Dear Simon Glass,
>
> In message <1318742050-2201-2-git-send-email-sjg at chromium.org> you wrote:
> ...
>> With it enabled, on ppc it's an extra 396 bytes of image size, and 1056
>> bytes of BSS.
>>
>> ARM note from Simon Glass <sjg at chromium.org> - ARM code size goes from
>> 212 to 484 bytes (extra 272 bytes), BSS to 1056 bytes.
>
> One problem I see is that the code size on some boards grows even if
> the new option is not enabled. Here a compare before and after
> applying your patches (without any changes to the respective board
> configurations):
>
> Configuring for AR405 board...
> text data bss dec hex filename
> - 246058 12972 14636 273666 42d02 /work/wd/tmp-ppc/u-boot
> + 246062 12972 14636 273670 42d06 /work/wd/tmp-ppc/u-boot
> Configuring for CANBT board...
> text data bss dec hex filename
> - 120710 8604 3876 133190 20846 /work/wd/tmp-ppc/u-boot
> + 120714 8604 3876 133194 2084a /work/wd/tmp-ppc/u-boot
> Configuring for pcs440ep board...
> text data bss dec hex filename
> - 296191 19636 345088 660915 a15b3 /work/wd/tmp-ppc/u-boot
> + 296195 19636 345088 660919 a15b7 /work/wd/tmp-ppc/u-boot
> ...
>
This doesn't happen for me on ARM - the compiler just inlines the new
static raw functions into the public functions. I will see if I can
figure out what is happening on PPC. It is 4 bytes, or one
instruction, right?
The fix might be to duplicate more code, or perhaps add an inline
keyword to the two functions.
Regards,
Simon
> Best regards,
>
> Wolfgang Denk
>
> --
> DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
> "Out of register space (ugh)"
> - vi
>
More information about the U-Boot
mailing list