llvm-project/llvm/test/tools
Ben Dunbobbin 564d248ec2 [ThinLTO]LTO]Legacy] Fix dependent libraries support by adding querying of the IRSymtab
Dependent libraries support for the legacy api was committed in a
broken state (see: https://reviews.llvm.org/D60274). This was missed
due to the painful nature of having to integrate the changes into a
linker in order to test. This change implements support for dependent
libraries in the legacy LTO api:

- I have removed the current api function, which returns a single
string, and   added functions to access each dependent library
specifier individually.

- To reduce the testing pain, I have made the api functions as thin as
possible to   maximize coverage from llvm-lto.

- When doing ThinLTO the system linker will load the modules lazily
when scanning   the input files. Unfortunately, when modules are
lazily loaded there is no access   to module level named metadata. To
fix this I have added api functions that allow   querying the IRSymtab
for the dependent libraries. I hope to expand the api in the   future
so that, eventually, all the information needed by a client linker
during   scan can be retrieved from the IRSymtab.

Differential Revision: https://reviews.llvm.org/D62935

llvm-svn: 363140
2019-06-12 11:07:56 +00:00
..
dsymutil [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
gold [ThinLTO] Auto-hide prevailing linkonce_odr only when all copies eligible 2019-05-10 20:08:24 +00:00
llvm-ar [llvm-ar] Create thin archives with MRI scripts 2019-06-06 13:19:50 +00:00
llvm-as Make llvm-as --help great again 2019-05-27 08:24:06 +00:00
llvm-cfi-verify [cfi-verify] Support cross-DSO 2018-08-24 15:21:58 +00:00
llvm-config [gn build] Commit change that should have been in r350410. 2019-01-04 17:26:05 +00:00
llvm-cov [tests] Add host-byteorder-*-endian; update XFAILs of big-endian triples 2019-05-01 15:36:18 +00:00
llvm-cvtres Let writeWindowsResourceCOFF() take a TimeStamp parameter 2019-06-11 11:26:50 +00:00
llvm-cxxdump [llvm-cxxdump] Use error reporting helpers from support 2018-11-11 01:24:02 +00:00
llvm-cxxfilt [llvm-cxxfilt]Add test to show that empty lines can be handled 2019-03-12 15:42:38 +00:00
llvm-cxxmap Add flag to llvm-profdata to allow symbols in profile data to be remapped, and 2018-09-13 20:22:02 +00:00
llvm-diff llvm-diff: Fix crash on anonymous functions 2018-09-24 04:42:13 +00:00
llvm-dlltool [llvm-dlltool] Respect NONAME keyword 2019-05-22 09:49:54 +00:00
llvm-dwarfdump [llvm-dwarfdump] Add -o to help text and remove --out-file from doc 2019-06-11 10:20:07 +00:00
llvm-dwp Replace 'REQUIRES: nozlib' with '!zlib' because we don't need two ways 2019-05-10 18:47:39 +00:00
llvm-elfabi [yaml2obj][obj2yaml] - Add support for dumping/parsing .dynamic sections. 2019-02-09 11:34:28 +00:00
llvm-exegesis [llvm-exegesis] Fix serialization/deserialization of special NoRegister register (PR41448) 2019-04-11 07:20:50 +00:00
llvm-extract [llvm-extract] Expose the group extraction feature of the BlockExtractor 2019-04-29 16:14:03 +00:00
llvm-isel-fuzzer [lit][tests]Add feature libcxx-used and use it in llvm-*-fuzzer tests 2019-05-14 13:54:33 +00:00
llvm-lib llvm-lib: Implement /machine: argument 2019-06-11 01:13:41 +00:00
llvm-lipo [llvm-lipo] Implement -archs 2019-06-07 20:47:58 +00:00
llvm-lit
llvm-lto [ThinLTO]LTO]Legacy] Fix dependent libraries support by adding querying of the IRSymtab 2019-06-12 11:07:56 +00:00
llvm-lto2 [NewPM] teach -passes= to emit meaningful error messages 2018-10-17 10:36:23 +00:00
llvm-mc Replace unused output filenames with /dev/null in tests 2018-07-02 18:16:44 +00:00
llvm-mca [llvm-mca] Enable bottleneck analysis when flag -all-views is specified. 2019-06-10 16:56:25 +00:00
llvm-modextract
llvm-mt
llvm-nm [llvm-nm] Fix Bug 41353 - unique symbols printed as D instead of u 2019-05-24 04:02:05 +00:00
llvm-objcopy [llvm-objcopy] Fix SHT_GROUP ordering. 2019-06-10 18:35:01 +00:00
llvm-objdump [ELF][llvm-objdump] Treat dynamic tag values as virtual addresses instead of offsets 2019-06-10 17:50:24 +00:00
llvm-opt-fuzzer [lit][tests]Add feature libcxx-used and use it in llvm-*-fuzzer tests 2019-05-14 13:54:33 +00:00
llvm-opt-report
llvm-pdbdump [NativePDB] Fix access to both old & new fpo data entries from dbi stream 2019-01-30 10:40:45 +00:00
llvm-profdata Replace 'REQUIRES: nozlib' with '!zlib' because we don't need two ways 2019-05-10 18:47:39 +00:00
llvm-rc Fix llvm-rc tests. 2019-03-27 20:15:08 +00:00
llvm-readobj [llvm-readobj] - Do not use precompiled binary in elf-broken-dynsym-link.test 2019-06-11 10:28:15 +00:00
llvm-size [llvm-nm][llvm-size] Use --double-dash options in tests 2019-04-26 13:42:16 +00:00
llvm-split
llvm-strings [llvm-ar][llvm-nm][llvm-size] Change -long-option to --long-option in tests. NFC 2019-05-01 15:31:15 +00:00
llvm-symbolizer Symbolize: Make DWPName a symbolizer option instead of an argument to symbolize{,Inlined}Code. 2019-06-11 02:32:27 +00:00
llvm-xray/X86 [llvm-xray] Support for PIE 2018-12-14 01:37:56 +00:00
lto [llvm-nm][llvm-readelf] Avoid single-dash -long-option in tests 2019-04-27 16:12:14 +00:00
obj2yaml [yaml2obj/obj2yaml] - Make RawContentSection::Content and RawContentSection::Size optional 2019-06-10 12:43:18 +00:00
opt-viewer [opt-viewer] Add --filter option to select remarks for displaying. 2019-02-06 18:43:37 +00:00
sancov
sanstats [yaml2obj][obj2yaml] - Change how symbol's binding is descibed when parsing/dumping. 2019-04-03 14:53:42 +00:00
yaml2obj [yaml2elf] - Check we are able to set custom sh_link for .symtab/.dynsym 2019-06-11 10:00:51 +00:00