[ELF] - Mention -fPIC in some error messages.

This is PR32429.

We did not mention -fPIC in error about producing dynamic relocation
in readonly segment before. Patch changes that.

Differential revision: https://reviews.llvm.org/D36874

llvm-svn: 312003
This commit is contained in:
George Rimar
2017-08-29 15:03:01 +00:00
parent 61b06b4f99
commit 68980850d7
2 changed files with 5 additions and 4 deletions

View File

@@ -566,7 +566,8 @@ static RelExpr adjustExpr(SymbolBody &Body, RelExpr Expr, uint32_t Type,
error("can't create dynamic relocation " + toString(Type) + " against " +
(Body.getName().empty() ? "local symbol"
: "symbol: " + toString(Body)) +
" in readonly segment" + getLocation<ELFT>(S, Body, RelOff));
" in readonly segment; recompile object files with -fPIC" +
getLocation<ELFT>(S, Body, RelOff));
return Expr;
}

View File

@@ -2,9 +2,9 @@
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: not ld.lld %t.o -o %t.so -shared 2>&1 | FileCheck %s
// CHECK: can't create dynamic relocation R_X86_64_64 against local symbol in readonly segment
// CHECK: >>> defined in {{.*}}.o
// CHECK: >>> referenced by {{.*}}.o:(.text+0x0)
// CHECK: can't create dynamic relocation R_X86_64_64 against local symbol in readonly segment; recompile object files with -fPIC
// CHECK-NEXT: >>> defined in {{.*}}.o
// CHECK-NEXT: >>> referenced by {{.*}}.o:(.text+0x0)
foo:
.quad foo