mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-01 05:01:59 +01:00
[llvm-objdump] - Improve the error message for "removing a section that is used by relocation" case.
This refines/improves the error message introduced in D58625 Differential revision: https://reviews.llvm.org/D58709 llvm-svn: 355074
This commit is contained in:
parent
a100e9a82e
commit
47c7c0875f
@ -3,7 +3,7 @@
|
||||
|
||||
# RUN: yaml2obj %s > %t1
|
||||
# RUN: not llvm-objcopy -R .data %t1 2>&1 | FileCheck %s
|
||||
# CHECK: error: Section .data cannot be removed because of symbol 'foo' used by the relocation patching offset 0x1 from section .rela.text.
|
||||
# CHECK: error: Section .data can't be removed: (.text+0x1) has relocation against symbol 'foo'
|
||||
|
||||
## Check the behavior when we also remove the relocation section.
|
||||
## We have no reference in this case and hence no error should be emitted.
|
||||
|
@ -557,12 +557,12 @@ Error RelocationSection::removeSectionReferences(
|
||||
for (const Relocation &R : Relocations) {
|
||||
if (!R.RelocSymbol->DefinedIn || !ToRemove(R.RelocSymbol->DefinedIn))
|
||||
continue;
|
||||
return createStringError(
|
||||
llvm::errc::invalid_argument,
|
||||
"Section %s cannot be removed because of symbol '%s' "
|
||||
"used by the relocation patching offset 0x%" PRIx64 " from section %s.",
|
||||
R.RelocSymbol->DefinedIn->Name.data(), R.RelocSymbol->Name.c_str(),
|
||||
R.Offset, this->Name.data());
|
||||
return createStringError(llvm::errc::invalid_argument,
|
||||
"Section %s can't be removed: (%s+0x%" PRIx64
|
||||
") has relocation against symbol '%s'",
|
||||
R.RelocSymbol->DefinedIn->Name.data(),
|
||||
SecToApplyRel->Name.data(), R.Offset,
|
||||
R.RelocSymbol->Name.c_str());
|
||||
}
|
||||
|
||||
return Error::success();
|
||||
|
Loading…
x
Reference in New Issue
Block a user