> Am 02.02.2019 um 15:13 schrieb Simon Glass <s...@chromium.org>: > > Hi Alex, > >> On Thu, 31 Jan 2019 at 08:06, Alexander Graf <ag...@suse.de> wrote: >> >> The board_r init function was complaining that we are looping through >> an array, calling all our tiny init stubs sequentially via indirect >> function calls (which can't be speculated, so they are slow). > > Is this a compiler warning? Could you let me know what this is?
It's the code comment I'm removing with this patch :). > >> >> The solution to that is pretty easy though. All we need to do is inline >> the function that loops through the functions and the compiler will >> automatically convert almost all indirect calls into direct inlined code. > > You mean it calls the functions one after the other without a > function-table array? Exactly. Magical, eh? It even inlines them! Alex > >> >> With this patch, the overall code size drops (by 40 bytes on riscv64) >> and boot time should become measurably faster for every target. >> >> Signed-off-by: Alexander Graf <ag...@suse.de> >> --- >> common/board_r.c | 5 +---- >> include/initcall.h | 35 ++++++++++++++++++++++++++++++++++- >> lib/Makefile | 1 - >> lib/initcall.c | 39 --------------------------------------- >> 4 files changed, 35 insertions(+), 45 deletions(-) >> delete mode 100644 lib/initcall.c >> > > Regards, > Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot