1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/test
Rafael Espindola b90e1b4a20 Add r224985 back with two fixes.
One is that AArch64 has additional restrictions on when local relocations can
be used. We have to take those into consideration when deciding to put a L
symbol in the symbol table or not.

The other is that ld64 requires the relocations to cstring to use linker
visible symbols on AArch64.

Thanks to Michael Zolotukhin for testing this!

Remove doesSectionRequireSymbols.

In an assembly expression like

bar:
.long L0 + 1

the intended semantics is that bar will contain a pointer one byte past L0.

In sections that are merged by content (strings, 4 byte constants, etc), a
single position in the section doesn't give the linker enough information.
For example, it would not be able to tell a relocation must point to the
end of a string, since that would look just like the start of the next.

The solution used in ELF to use relocation with symbols if there is a non-zero
addend.

In MachO before this patch we would just keep all symbols in some sections.

This would miss some cases (only cstrings on x86_64 were implemented) and was
inefficient since most relocations have an addend of 0 and can be represented
without the symbol.

This patch implements the non-zero addend logic for MachO too.

llvm-svn: 225644
2015-01-12 18:13:07 +00:00
..
Analysis Fix PR22179. 2015-01-10 23:41:24 +00:00
Assembler IR: Add 'distinct' MDNodes to bitcode and assembly 2015-01-08 22:38:29 +00:00
Bindings Disable Go bindings test under UBSan. 2015-01-09 23:17:23 +00:00
Bitcode Use the DiagnosticHandler to print diagnostics when reading bitcode. 2015-01-10 00:07:30 +00:00
BugPoint IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
CodeGen [PowerPC] Fix calls to non-function objects 2015-01-12 04:34:47 +00:00
DebugInfo Revert "Reapply: Teach SROA how to update debug info for fragmented variables." 2015-01-08 02:02:00 +00:00
ExecutionEngine [MCJIT] Remove a few redundant MCJIT tests, and drop the extraneous datalayout 2015-01-08 18:52:15 +00:00
Feature Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
FileCheck
Instrumentation Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
Integer
JitListener Fix the JIT event listeners and replace the associated tests. 2015-01-09 22:53:24 +00:00
Linker Utils: Keep distinct MDNodes distinct in MapMetadata() 2015-01-08 22:42:30 +00:00
LTO Put this test's input in the Inputs directory where it belongs, rather than 2015-01-12 08:50:47 +00:00
MC Add r224985 back with two fixes. 2015-01-12 18:13:07 +00:00
Object Don't loop endlessly for MachO files with 0 ncmds 2015-01-06 17:08:26 +00:00
Other [PM] Give slightly less horrible names to the utility pass templates for 2015-01-07 11:14:51 +00:00
SymbolRewriter
TableGen
tools Add the option, -universal-headers, used with -macho to print the Mach-O universal headers to llvm-objdump. 2015-01-09 19:22:37 +00:00
Transforms [PowerPC] Readjust the loop unrolling threshold 2015-01-10 00:31:10 +00:00
Unit
Verifier Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
YAMLParser
.clang-format
CMakeLists.txt Revert r224149, llvm-dsymutil was already here. 2014-12-12 21:25:07 +00:00
lit.cfg llvm/test/lit.cfg: have_ld_plugin_support(): Use decode() for stdout. 2015-01-05 14:18:04 +00:00
lit.site.cfg.in [lit] Make config.llvm_lib_dir available on cmake, too. 2014-12-30 03:24:11 +00:00
Makefile [lit] Make config.llvm_lib_dir available on cmake, too. 2014-12-30 03:24:11 +00:00
Makefile.tests
TestRunner.sh