llvm-project/llvm/test/Object
Peter Collingbourne 82e657b509 Object: Prepend __imp_ when mangling a dllimport symbol in IRObjectFile.
We cannot prepend __imp_ in the IR mangler because a function reference may
be emitted unmangled in a constant initializer. The linker is expected to
resolve such references to thunks. This is covered by the new test case.

Strictly speaking we ought to emit two undefined symbols, one with __imp_ and
one without, as we cannot know which symbol the final object file will refer
to. However, this would require rather intrusive changes to IRObjectFile,
and lld works fine without it for now.

This reimplements r239437, which was reverted in r239502.

Differential Revision: http://reviews.llvm.org/D10400

llvm-svn: 239560
2015-06-11 21:42:18 +00:00
..
AArch64 [ELFYAML] Provide default value 0 for YAML relocation addendum field 2015-01-29 06:56:24 +00:00
ARM Plumb in the ARM thumb symbolizer in llvm-objdump’s Mach-O disassembler and 2014-11-06 19:00:13 +00:00
Inputs [Object, MachO] Don't crash on incomplete MachO segment load commands. 2015-06-04 22:26:44 +00:00
Mips [llvm-readobj/obj2yaml/yaml2obj] Support MIPS machine ELF header flags 2015-05-08 07:04:59 +00:00
X86 Move test that depends on x86 to the x86 directory. 2015-06-04 15:25:47 +00:00
ar-create.test
ar-error.test llvm/test/Object/ar-error.test: Don't check the message "No such file or directory". 2014-05-24 08:47:11 +00:00
archive-delete.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
archive-error-tmp.txt Remove "REQUIRES:shell" from tests. They work for me. 2014-11-04 13:41:33 +00:00
archive-extract-dir.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
archive-format.test Make llvm/test/Object/archive-format.test CRLF-tolerant. 2015-03-03 15:54:48 +00:00
archive-long-index.test Changed the lvm-nm alias "-s" for -print-armap to "-M". 2014-07-08 23:47:31 +00:00
archive-move.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
archive-replace-pos.test
archive-symtab.test Object, support both mach-o archive t.o.c file names 2014-11-12 01:37:45 +00:00
archive-toc.test Start adding thin archive support. 2014-12-16 01:43:41 +00:00
archive-update.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
check_binary_output.ll
coff-archive-short.test Object, COFF: Cleanup symbol type code, improve binutils compatibility 2014-10-31 05:07:00 +00:00
coff-archive.test Object, COFF: Cleanup symbol type code, improve binutils compatibility 2014-10-31 05:07:00 +00:00
corrupt.test
directory.ll Use std::error_code instead of llvm::error_code. 2014-06-11 19:05:50 +00:00
dllimport.ll Object: Prepend __imp_ when mangling a dllimport symbol in IRObjectFile. 2015-06-11 21:42:18 +00:00
elf-reloc-no-sym.test
elf-unknown-type.test [Object][ELF] Test unknown type. 2015-01-23 21:58:09 +00:00
extract.ll lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
kext.test Object: Test for reading kext bundles 2015-02-27 18:58:23 +00:00
lit.local.cfg
macho-invalid.test [Object, MachO] Don't crash on incomplete MachO segment load commands. 2015-06-04 22:26:44 +00:00
mangle-ir.ll Mark intrinsic functions as llvm-specific. 2014-07-04 15:58:00 +00:00
mri-addlib.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri-addmod.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri-crlf.test Add CRLF support to LineIterator. 2014-11-03 14:09:47 +00:00
mri1.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri2.test llvm-ar: Start adding support for mri scripts. 2014-10-10 18:33:51 +00:00
mri3.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri4.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri5.test llvm-ar: Start adding support for mri scripts. 2014-10-10 18:33:51 +00:00
nm-archive.test LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
nm-darwin-m.test Added the -m option as an alias for -format=darwin to llvm-nm and llvm-size 2014-06-20 00:04:16 +00:00
nm-error.test
nm-irix6.test [Object] Support reading 64-bit MIPS ELF archives 2015-02-17 18:54:22 +00:00
nm-shared-object.test Fix llvm-nm to print the full 64-bit address for symbols in 64-bit object files. 2014-05-09 23:57:49 +00:00
nm-trivial-object.test Fix llvm-nm -S option. 2015-05-22 13:28:35 +00:00
nm-universal-binary.test pr20589: Fix duplicated arch flag. 2014-08-08 16:18:29 +00:00
nm-weak-global-macho.test
obj2yaml-coff-long-file-symbol.test
obj2yaml-coff-long-section-name.test obj2yaml, COFF: Handle long section names 2014-10-10 00:17:57 +00:00
obj2yaml-coff-section-aux-symbol.test Add tests for r219479. 2014-10-10 06:59:05 +00:00
obj2yaml-coff-weak-external.test
obj2yaml-sectiongroup.test [obj2yaml/yaml2obj] Add SHT_GROUP support. 2015-02-21 04:28:26 +00:00
obj2yaml.test Fix the interpretation of a 0 st_name. 2015-06-03 05:14:22 +00:00
objdump-export-list.test [Object] Don't crash on empty export lists. 2014-12-19 02:31:01 +00:00
objdump-file-header.test
objdump-no-sectionheaders.test objdump: Add test for ELF file with no section table 2014-06-30 20:03:02 +00:00
objdump-private-headers.test Add mach-o LC_RPATH support to llvm-objdump 2014-12-04 07:37:02 +00:00
objdump-reloc-shared.test llvm-objdump: don't print relocations in non-relocatable files. 2014-08-17 19:09:37 +00:00
objdump-relocations.test Fix getRelocationValueString to return the symbol name for EM_386. 2014-10-29 18:37:13 +00:00
objdump-section-content.test
objdump-sectionheaders.test
objdump-symbol-table.test Stop inventing symbol sizes. 2015-05-22 15:43:00 +00:00
readobj-elf-versioning.test
readobj-shared-object.test Fix the interpretation of a 0 st_name. 2015-06-03 05:14:22 +00:00
readobj.test
relocation-executable.test
simple-archive.test Changed the lvm-nm alias "-s" for -print-armap to "-M". 2014-07-08 23:47:31 +00:00
size-trivial-macho.test Add the -arch flag support to llvm-size like what was done to llvm-nm 2014-07-01 17:19:10 +00:00
yaml2obj-coff-multi-doc.test [yaml2obj] Add new command line option `-docnum`. 2014-05-31 04:51:07 +00:00
yaml2obj-elf-bits-endian.test
yaml2obj-elf-file-headers-with-e_flags.yaml [yaml2obj] Allow yaml2obj tool to recognize EF_MIPS_NAN2008 flag 2014-11-04 13:33:36 +00:00
yaml2obj-elf-file-headers.yaml
yaml2obj-elf-multi-doc.test [yaml2obj] Add new command line option `-docnum`. 2014-05-31 04:51:07 +00:00
yaml2obj-elf-rel-noref.yaml Support arm32 R_ARM_V4BX relocation format 2015-04-22 15:26:43 +00:00
yaml2obj-elf-rel.yaml
yaml2obj-elf-section-basic.yaml [yaml2obj][ELF] Add an optional `Size` field to the YAML section declaration. 2014-05-16 16:01:00 +00:00
yaml2obj-elf-section-invalid-size.yaml [yaml2obj][ELF] Add an optional `Size` field to the YAML section declaration. 2014-05-16 16:01:00 +00:00
yaml2obj-elf-symbol-LocalGlobalWeak.yaml
yaml2obj-elf-symbol-basic.yaml
yaml2obj-elf-symbol-visibility.yaml [ELF][yaml2obj] Handle additional MIPS specific st_other field flags 2014-11-06 22:46:24 +00:00
yaml2obj-readobj.test [yaml2obj] Add "-o" command line option to specify an output file name. 2014-05-15 16:14:02 +00:00