]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
rtld-elf: link udivmoddi4 from compiler_rt
authorRyan Libby <rlibby@FreeBSD.org>
Sat, 19 Dec 2020 08:38:31 +0000 (08:38 +0000)
committerRyan Libby <rlibby@FreeBSD.org>
Sat, 19 Dec 2020 08:38:31 +0000 (08:38 +0000)
commitbce2cff0bc0ee3ab5b7a66c19920e7cfe3400f6f
treeb34255baa7c5ff56e8958e409240292df9d779c7
parent198a0e58ec9c0a53eed0c8782df47915f29cd8a4
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
libexec/rtld-elf/rtld-libc/Makefile.inc