freebsd-dev/libexec/rtld-elf
Ryan Libby bce2cff0bc rtld-elf: link udivmoddi4 from compiler_rt
This fixes the gcc9 build of rtld-elf32 on amd64, which needed an
implementation of udivmoddi4.

rtld-elf uses certain functions normally found in libc, and so it
includes certain files from libc in its own build.  It has two
mechanisms to include files from libc: one that rebuilds source files in
the rtld-elf environment, and one that extracts object files from a
purpose-built no-SSP PIC archive.

In addition to libc functions, rtld-elf may need to link functions
normally found in libcompiler_rt (formerly libgcc).  Now, add an ability
to rebuild libcompiler_rt source files in the rtld-elf environment.  We
don't yet have a need for an object file extraction mechanism.

libcompiler_rt could also supply udivdi3 and umoddi3, but leave them
alone for now.

Reviewed by:	arichardson, kib
Sponsored by:	Dell EMC Isilon
Differential Revision:	https://reviews.freebsd.org/D27665
2020-12-19 08:38:31 +00:00
..
aarch64 Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
amd64 Align initial-exec TLS segments to the p_vaddr % align. 2020-04-19 09:28:59 +00:00
arm Move ARM specific flags to arm/Makefile.inc 2020-04-29 16:05:50 +00:00
i386 Align initial-exec TLS segments to the p_vaddr % align. 2020-04-19 09:28:59 +00:00
mips Align initial-exec TLS segments to the p_vaddr % align. 2020-04-19 09:28:59 +00:00
powerpc Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
powerpc64 Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
riscv Maintain a stack alignment of 16-bytes. 2020-09-04 21:46:10 +00:00
rtld-libc rtld-elf: link udivmoddi4 from compiler_rt 2020-12-19 08:38:31 +00:00
tests Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
debug.c libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
debug.h Use rtld_putstr() instead of write() for the rtld msg() macro 2019-06-26 15:43:26 +00:00
libmap.c Reduce size of rtld by 22% by pulling in less code from libc 2019-06-30 11:49:58 +00:00
libmap.conf Move libmap.conf to libexec/rtld-elf/ 2018-09-18 00:25:00 +00:00
libmap.h rtld-elf: make it compile with WARNS=3 2018-10-29 21:08:11 +00:00
Makefile Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
Makefile.depend new depends 2015-06-16 23:37:19 +00:00
map_object.c Undo 'fix off by one' part of r365360. 2020-09-05 22:48:27 +00:00
paths.h rtld-elf: compile with WANRS=4 warnings other than -Wcast-align 2018-10-29 21:08:19 +00:00
rtld_lock.c Use sigfastblock(2) in rtld. 2020-02-09 12:22:43 +00:00
rtld_lock.h libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
rtld_malloc.c Remove remnants of optimization for > pagesize allocations. 2019-09-02 08:03:29 +00:00
rtld_malloc.h Add header file missed in r343564. 2019-01-29 22:45:24 +00:00
rtld_printf.c Reduce size of rtld by 22% by pulling in less code from libc 2019-06-30 11:49:58 +00:00
rtld_printf.h Use rtld_putstr() instead of write() for the rtld msg() macro 2019-06-26 15:43:26 +00:00
rtld_tls.h Remove sparc64 specific parts of rtld-elf. 2020-02-26 18:49:25 +00:00
rtld_utrace.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
rtld.1 Fix a few mandoc issues 2020-10-09 15:14:19 +00:00
rtld.c rtld: bump r_debug.r_version to 1 from current 0. 2020-12-01 22:28:01 +00:00
rtld.h Do not allow to load ET_DYN object with DF_1_PIE flag set. 2020-06-02 16:20:58 +00:00
Symbol.map Add version indicators to rtld. 2020-05-26 19:22:46 +00:00
xmalloc.c Make p_vaddr % p_align == p_offset % p_align for (some) TLS segments. 2020-04-04 22:37:50 +00:00