aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorHal Finkel <hfinkel@anl.gov>2015-10-16 22:11:05 +0000
committerHal Finkel <hfinkel@anl.gov>2015-10-16 22:11:05 +0000
commitc91740616ae58b162ec35789c702deb1d2cdeaa5 (patch)
tree4ef7ed9eedda7ec762b7bedefb5b1551f61ca5e7 /clang/lib/Frontend/CompilerInvocation.cpp
parent0fdd572763a3fd1503c31ac9ac89b8bf04065040 (diff)
downloadllvm-c91740616ae58b162ec35789c702deb1d2cdeaa5.zip
llvm-c91740616ae58b162ec35789c702deb1d2cdeaa5.tar.gz
llvm-c91740616ae58b162ec35789c702deb1d2cdeaa5.tar.bz2
[ELF2] Don't create RelativeReloc for weak undef symbols
When we have a R_PPC64_ADDR64 for a weak undef symbol, which thus resolves to 0, and we're creating a shared library, we need to make sure that it stays 0 (because code that conditionally calls the weak function tests for this). Unfortunately, we were creating a R_PPC64_RELATIVE for these relocation targets, making the address of the undefined weak symbol equal to the base address of the shared library (which is non-zero). In general, we should not be creating RelativeReloc relocs for undef weak symbols. llvm-svn: 250558
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions