diff options
author | Justin Hibbits <jrh29@alumni.cwru.edu> | 2020-03-23 20:09:45 -0500 |
---|---|---|
committer | Justin Hibbits <jrh29@alumni.cwru.edu> | 2020-03-26 10:59:28 -0500 |
commit | 459e8e94886f979d079a9269dbb2ba83e84c4642 (patch) | |
tree | bc1a4042c858ae4f86b9450158a1ae346c4add94 /llvm/tools/llvm-objdump/llvm-objdump.cpp | |
parent | a92673fe9a08b5ed4f67cc52782bacc29cf945ec (diff) | |
download | llvm-459e8e94886f979d079a9269dbb2ba83e84c4642.zip llvm-459e8e94886f979d079a9269dbb2ba83e84c4642.tar.gz llvm-459e8e94886f979d079a9269dbb2ba83e84c4642.tar.bz2 |
[PowerPC]: Don't allow r0 as a target for LD_GOT_TPREL_L/32
Summary:
The linker is free to relax this (relocation R_PPC_GOT_TPREL16) against
R_PPC_TLS, if it sees fit (initial exec to local exec). If r0 is used,
this can generate execution-invalid code (converts to 'addi %rX, %r0,
FOO, which translates in PPC-lingo to li %rX, FOO). Forbid this
instead.
This fixes static binaries using locales on FreeBSD/powerpc
(tested on FreeBSD/powerpcspe).
Reviewed By: nemanjai
Differential Revision: https://reviews.llvm.org/D76662
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions