diff options
-rw-r--r-- | lld/lib/ReaderWriter/ELF/Mips/MipsRelocationPass.cpp | 13 | ||||
-rw-r--r-- | lld/test/elf/Mips/validate-rel-02.test | 41 |
2 files changed, 0 insertions, 54 deletions
diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsRelocationPass.cpp b/lld/lib/ReaderWriter/ELF/Mips/MipsRelocationPass.cpp index 0800218e033..b47c7d2210d 100644 --- a/lld/lib/ReaderWriter/ELF/Mips/MipsRelocationPass.cpp +++ b/lld/lib/ReaderWriter/ELF/Mips/MipsRelocationPass.cpp @@ -915,16 +915,6 @@ make_reject_for_shared_lib_reloc_error(const ELFLinkingContext &ctx, } static std::error_code -make_external_gprel32_reloc_error(const ELFLinkingContext &ctx, - const DefinedAtom &atom, - const Reference &ref) { - return make_dynamic_error_code( - "R_MIPS_GPREL32 (12) relocation cannot be used " - "against external symbol " + - ref.target()->name() + " in file " + atom.file().path()); -} - -static std::error_code make_local_call16_reloc_error(const ELFLinkingContext &ctx, const DefinedAtom &atom, const Reference &ref) { return make_dynamic_error_code("R_MIPS_CALL16 (11) relocation cannot be used " @@ -940,9 +930,6 @@ RelocationPass<ELFT>::validateRelocation(const DefinedAtom &atom, if (!ref.target()) return std::error_code(); - if (ref.kindValue() == R_MIPS_GPREL32 && !isLocal(ref.target())) - return make_external_gprel32_reloc_error(this->_ctx, atom, ref); - if (isCallReloc(ref.kindValue()) && isLocal(ref.target())) return make_local_call16_reloc_error(this->_ctx, atom, ref); diff --git a/lld/test/elf/Mips/validate-rel-02.test b/lld/test/elf/Mips/validate-rel-02.test deleted file mode 100644 index 01160ee27e9..00000000000 --- a/lld/test/elf/Mips/validate-rel-02.test +++ /dev/null @@ -1,41 +0,0 @@ -# Check that the linker does not accept R_MIPS_GPREL32 relocation -# against external symbol. - -# RUN: yaml2obj -format=elf -docnum 1 %s > %t.o -# RUN: not lld -flavor gnu -target mipsel -e T0 -o %t.exe %t.o 2>&1 \ -# RUN: | FileCheck %s - -# CHECK: R_MIPS_GPREL32 (12) relocation cannot be used against external symbol T0 in file {{.*}}validate-rel-02.test.tmp.o - ---- -FileHeader: - Class: ELFCLASS32 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_MIPS - Flags: [EF_MIPS_CPIC, EF_MIPS_ABI_O32, EF_MIPS_ARCH_32] - -Sections: - - Name: .text - Type: SHT_PROGBITS - Flags: [ SHF_ALLOC, SHF_EXECINSTR ] - AddressAlign: 16 - Size: 4 - - - Name: .rel.text - Type: SHT_REL - Link: .symtab - AddressAlign: 4 - Info: .text - Relocations: - - Offset: 0 - Symbol: T0 - Type: R_MIPS_GPREL32 - -Symbols: - Global: - - Name: T0 - Type: STT_FUNC - Section: .text - Size: 4 -... |