linux/tools/objtool
Peter Zijlstra 74b873e49d objtool: Optimize find_rela_by_dest_range()
Perf shows there is significant time in find_rela_by_dest(); this is
because we have to iterate the address space per byte, looking for
relocation entries.

Optimize this by reducing the address space granularity.

This reduces objtool on vmlinux.o runtime from 4.8 to 4.4 seconds.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Miroslav Benes <mbenes@suse.cz>
Acked-by: Josh Poimboeuf <jpoimboe@redhat.com>
Link: https://lkml.kernel.org/r/20200324160924.861321325@infradead.org
2020-03-25 18:28:31 +01:00
..
arch/x86 objtool: Move x86 insn decoder to a common location 2019-08-31 22:27:52 -03:00
Documentation docs: fix broken documentation links 2019-06-08 13:42:13 -06:00
.gitignore objtool: Move synced files to their original relative locations 2017-11-07 10:48:23 +01:00
arch.h objtool: Support conditional retpolines 2019-07-18 21:01:10 +02:00
Build objtool: Optimize find_symbol_*() and read_symbols() 2020-03-25 18:28:29 +01:00
builtin-check.c objtool: Add a statistics mode 2020-03-25 18:28:28 +01:00
builtin-orc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
builtin.h objtool: Add a statistics mode 2020-03-25 18:28:28 +01:00
cfi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
check.c objtool: Delete cleanup() 2020-03-25 18:28:30 +01:00
check.h objtool: Resize insn_hash 2020-03-25 18:28:30 +01:00
elf.c objtool: Optimize find_rela_by_dest_range() 2020-03-25 18:28:31 +01:00
elf.h objtool: Optimize find_rela_by_dest_range() 2020-03-25 18:28:31 +01:00
Makefile objtool: Fix ARCH=x86_64 build error 2020-01-22 07:54:57 +01:00
objtool.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
orc_dump.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
orc_gen.c objtool: Optimize read_sections() 2020-03-25 18:28:30 +01:00
orc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
special.c objtool: Optimize read_sections() 2020-03-25 18:28:30 +01:00
special.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
sync-check.sh objtool: Silence build output 2020-01-22 07:54:34 +01:00
warn.h objtool: Rename find_containing_func() 2020-03-25 18:28:29 +01:00