Function cus__merging_cu() is introduced in Commit 39227909db3c ("dwarf_loader: Permit merging all DWARF CU's for clang LTO built binary") to test whether cross-cu references may happen. The original implementation anticipates compilation flags in dwarf, but later some concerns about binary size surfaced and the decision is to scan .debug_abbrev as a faster way to check cross-cu references. Also putting a note in vmlinux to indicate whether lto is enabled for built or not can provide a much faster way. This patch set implemented this two approaches, first checking the note (in Patch #2), if not found, then check .debug_abbrev (in Patch #1). Yonghong Song (2): dwarf_loader: check .debug_abbrev for cross-cu references dwarf_loader: check .notes section for lto build info dwarf_loader.c | 76 ++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 55 insertions(+), 21 deletions(-) -- 2.30.2