llvm-project/llvm/test/CodeGen
Rafael Espindola 65e4902156 Drop prelink support.
The way prelink used to work was

* The compiler decides if a given section only has relocations that
are know to point to the same DSO. If so, it names it
.data.rel.ro.local<something>.
* The static linker puts all of these together.
* The prelinker program assigns addresses to each library and resolves
the local relocations.

There are many problems with this:
* It is incompatible with address space randomization.
* The information passed by the compiler is redundant. The linker
knows if a given relocation is in the same DSO or not. If could sort
by that if so desired.
* There are newer ways of speeding up DSO (gnu hash for example).
* Even if we want to implement this again in the compiler, the previous
  implementation is pretty broken. It talks about relocations that are
  "resolved by the static linker". If they are resolved, there are none
  left for the prelinker. What one needs to track is if an expression
  will require only dynamic relocations that point to the same DSO.

At this point it looks like the prelinker is an historical curiosity.
For example, fedora has retired it because it failed to build for two
releases
(http://pkgs.fedoraproject.org/cgit/prelink.git/commit/?id=eb43100a8331d91c801ee3dcdb0a0bb9babfdc1f)

This patch removes support for it. That is, it stops printing the
".local" sections.

llvm-svn: 253280
2015-11-17 00:51:23 +00:00
..
AArch64 Drop prelink support. 2015-11-17 00:51:23 +00:00
AMDGPU Revert "Remove unnecessary call to getAllocatableRegClass" 2015-11-12 21:43:25 +00:00
ARM Drop prelink support. 2015-11-17 00:51:23 +00:00
BPF [bpf] Do not expand UNDEF SDNode during insn selection lowering 2015-10-08 18:52:40 +00:00
CPP Fix CPP Backend for GEP API changes for opaque pointer types 2015-09-08 18:42:29 +00:00
Generic Revert "[ARM] Remove XFAIL on test/CodeGen/Generic/MachineBranchProb.ll" 2015-10-29 22:34:59 +00:00
Hexagon [Hexagon] Fixing compound register printing and reenabling more tests. 2015-11-10 00:51:56 +00:00
Inputs DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
MIR MachineVerifier: Add missing linebreak 2015-11-09 23:59:29 +00:00
MSP430
Mips Drop prelink support. 2015-11-17 00:51:23 +00:00
NVPTX [NVPTX] Let NVPTX backend detect integer min and max patterns. 2015-08-26 23:22:02 +00:00
PowerPC Find available scratch register to use in function prologue and epilogue as part of shrink wrapping. 2015-11-16 20:22:15 +00:00
SPARC Drop assert that a call with struct return goes to a function with sret 2015-10-21 20:05:01 +00:00
SystemZ [SystemZ] Make the CCRegs regclass non-allocatable. 2015-10-29 16:13:55 +00:00
Thumb [ARM] Modify codegen for memcpy intrinsic to prefer LDM/STM. 2015-10-05 14:49:54 +00:00
Thumb2 Revert "[ARM] Enable shrink-wrapping by default." 2015-11-12 13:34:50 +00:00
WebAssembly [WebAssembly] Fix printing of global operands 2015-11-17 00:20:44 +00:00
WinEH [WinEH] Find root frame correctly in CLR funclets 2015-11-13 00:39:23 +00:00
X86 Drop prelink support. 2015-11-17 00:51:23 +00:00
XCore DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00