PR sanitizer/77631 Support for external debug info. * elf.c: Include <errno.h>, <sys/stat.h>, <unistd.h>. (S_ISLNK): Define if not defined. (xstrnlen): Define if strnlen is not available. (b_elf_note): Define type. (NT_GNU_BUILD_ID): Define macro. (elf_crc32, elf_crc32_file): New static functions. (elf_is_symlink, elf_readlink): New static functions. (elf_open_debugfile_by_buildid): New static function. (elf_try_debugfile): New static function. (elf_find_debugfile_by_debuglink): New static function. (elf_open_debugfile_by_debuglink): New static function. (elf_add): Add filename and debuginfo parameters. Adjust all callers. Look for external debug info notes, and try to fetch debug info from external file. (struct phdr_data): Add exe_filename field. (phdr_callback): Pass filename to elf_add. (backtrace_initialize): Add filename parameter. * internal.h (backtrace_initialize): Add filename parameter. * fileline.c (fileline_initialize): Pass filename to backtrace_initialize. * pecoff.c (fileline_initialize): Add unused filename parameter. * unknown.c (fileline_initialize): Likewise. * xcoff.c (fileline_initialize): Likewise. * configure.ac: Check for objcopy --add-gnu-debuglink. * Makefile.am (dtest): New test target. * configure, Makefile.in: Rebuild. Co-Authored-By: Denis Khalikov <d.khalikov@partner.samsung.com> From-SVN: r253032
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
ChangeLog | Loading commit data... | |
ChangeLog.jit | Loading commit data... | |
Makefile.am | Loading commit data... | |
Makefile.in | Loading commit data... | |
README | Loading commit data... | |
aclocal.m4 | Loading commit data... | |
alloc.c | Loading commit data... | |
atomic.c | Loading commit data... | |
backtrace-supported.h.in | Loading commit data... | |
backtrace.c | Loading commit data... | |
backtrace.h | Loading commit data... | |
btest.c | Loading commit data... | |
config.h.in | Loading commit data... | |
configure | Loading commit data... | |
configure.ac | Loading commit data... | |
dwarf.c | Loading commit data... | |
edtest.c | Loading commit data... | |
edtest2.c | Loading commit data... | |
elf.c | Loading commit data... | |
fileline.c | Loading commit data... | |
filetype.awk | Loading commit data... | |
internal.h | Loading commit data... | |
mmap.c | Loading commit data... | |
mmapio.c | Loading commit data... | |
nounwind.c | Loading commit data... | |
pecoff.c | Loading commit data... | |
posix.c | Loading commit data... | |
print.c | Loading commit data... | |
read.c | Loading commit data... | |
simple.c | Loading commit data... | |
sort.c | Loading commit data... | |
state.c | Loading commit data... | |
stest.c | Loading commit data... | |
testlib.c | Loading commit data... | |
testlib.h | Loading commit data... | |
ttest.c | Loading commit data... | |
unknown.c | Loading commit data... | |
xcoff.c | Loading commit data... |