
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256
Hi Marek,
On 17.12.2015 00:52, Marek Vasut wrote: [...]
Of course I can make it static inline.
I was suggested not to care about possible leftovers that are not garbage-collected by linker so didn't changed that on V2.
It's (max) few bytes that may be consumed by section alignment.
I was just curious about how much difference this would make.
I added one more commit (to do wait_for_bit static inline), and ran buildman on 4 boards (2x using and 2x not using wait_bit).
tl;dr: For (at least) some boards it increases .rodata by 7 bytes. Even if they don't use wait_for_bit. Inline version works better, as it doesn't touch them
My proposal - I'll send v3 with wait_for_bit as static inline...
Buildman output:
$ tools/buildman/buildman -b wait_for_bit_v2 -o buildman hikey sandbox usb_a9263 zynq_picozed -sdSB boards.cfg is up to date. Nothing to do. Summary of 7 commits for 4 boards (4 threads, 1 job per thread) 01: eeprom: fix eeprom write procedure 02: lib: Add wait_for_bit sandbox: (for 1/1 boards) all +224.0 text +224.0 sandbox : all +224 text +224 u-boot: add: 1/0, grow: 0/0 bytes: 137/0 (137) function old new delta wait_for_bit - 137 +137 arm: (for 2/2 boards) spl/u-boot-spl:all +3.5 spl/u-boot-spl:rodata +3.5 zynq_picozed : spl/u-boot-spl:all +7 spl/u-boot-spl:rodata +7 03: usb: dwc2: Use shared wait_for_bit aarch64: (for 1/1 boards) all +168.0 rodata +16.0 text +152.0 hikey : all +168 rodata +16 text +152 u-boot: add: 0/0, grow: 4/0 bytes: 156/0 (156) function old new delta wait_for_bit 104 164 +60 usb_lowlevel_init 820 864 +44 dwc_otg_core_reset 120 156 +36 wait_for_chhltd 140 156 +16 04: usb: ohci-lpc32xx: Use shared wait_for_bit 05: usb: ehci-mx6: Use shared wait_for_bit 06: net: zynq_gem: Use shared wait_for_bit arm: (for 2/2 boards) all +53.0 bss +6.0 rodata +7.0 text +40.0 zynq_picozed : all +106 bss +12 rodata +14 text +80 u-boot: add: 1/0, grow: 0/-1 bytes: 140/-68 (72) function old new delta wait_for_bit - 140 +140 zynq_gem_send 276 208 -68 07: make wait_bit static inline sandbox: (for 1/1 boards) all -224.0 text -224.0 sandbox : all -224 text -224 arm: (for 2/2 boards) spl/u-boot-spl:all -3.5 spl/u-boot-spl:rodata -3.5 zynq_picozed : spl/u-boot-spl:all -7 spl/u-boot-spl:rodata -7
Regards, Mateusz