summaryrefslogtreecommitdiff
path: root/lib/strmhz.c
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2017-01-02 11:48:28 +0000
committerJagan Teki <jagan@openedev.com>2017-01-04 16:37:40 +0100
commita28e1d98310e62dc88947b91d17105b58de01889 (patch)
treed5e21ff49840359140b9d1f661e6c391b4348746 /lib/strmhz.c
parentaa9226f0edba6a07c59e2645533e5cf625096cc9 (diff)
downloadu-boot-imx-a28e1d98310e62dc88947b91d17105b58de01889.zip
u-boot-imx-a28e1d98310e62dc88947b91d17105b58de01889.tar.gz
u-boot-imx-a28e1d98310e62dc88947b91d17105b58de01889.tar.bz2
SPL: tiny-printf: add "l" modifier
tiny-printf does not know about the "l" modifier so far, which breaks the crash dump on AArch64, because it uses %lx to print the registers. Add an easy way of handling longs correctly. Using a relatively decent compiler (GCC 5.3.0) this does _not_ increase the code size of tiny-printf.o for 32-bit builds (where long and int are actually the same), actually it looses three (ARM Thumb2) instructions from the actual SPL (numbers for orangepi_plus_defconfig): text data bss dec hex filename 758 0 0 758 2f6 spl/lib/tiny-printf.o before 18839 488 232 19559 4c67 spl/u-boot-spl before 758 0 0 758 2f6 spl/lib/tiny-printf.o after 18833 488 232 19553 4c61 spl/u-boot-spl after This adds some substantial amount of code to a 64-bit build, though: (taken after a later commit, which enables the ARM64 SPL build for sunxi) text data bss dec hex filename 1542 0 0 1542 606 spl/lib/tiny-printf.o before 25830 392 360 26582 67d6 spl/u-boot-spl before 1758 0 0 1758 6de spl/lib/tiny-printf.o after 26040 392 360 26792 68a8 spl/u-boot-spl after Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jagan Teki <jagan@openedev.com>
Diffstat (limited to 'lib/strmhz.c')
0 files changed, 0 insertions, 0 deletions