
Dear Wolfgang Denk,
Dear Marek Vasut,
In message 1343483279-11572-2-git-send-email-marex@denx.de you wrote:
This shall eliminate the need for bubblesorting of commands at runtime. Every command definition structure is now put into it's own subsection of section .u_boot_cmd, that is .u_boot_cmd.<name> . These are then put into .u_boot_cmd by linker and lastly, linker uses SORT() over these subsections to make proper order on them. This shall eliminate some runtime overhead.
Signed-off-by: Marek Vasut marex@denx.de Cc: Wolfgang Denk wd@denx.de Cc: Mike Frysinger vapier@gentoo.org
arch/arm/cpu/u-boot.lds | 2 +- common/cmd_help.c | 2 +- include/command.h | 9 ++++++--- 3 files changed, 8 insertions(+), 5 deletions(-)
Seems incomplete in several aspects:
Below the section:
* NOTE * THIS PATCH IS CRAZY
There are a few notes. I'd actually like to know if this approach is correct at all, it might break on some crazy configurations or such.
- what about all the non-ARM architecures and the board specific linker scripts?
- This patch affects only arm926t, obviously to make it proper, every linkerscript would have to be adjusted
Which sucks, since there're a lot of them. But it can probably be automated.
- what about removing the sort code?
You mean in the _do_help() in common/command.c? We can do not only that, but we can do bisect search in find_cmd_tbl() now too. I'm still trying to figure out the most optimal implementation. The current one I have trimmed down the time by roughly 60%, but I don't like it.
Best regards,
Wolfgang Denk
Best regards, Marek Vasut