[Mips] Teach LLD to recognize one more MIPS target triple - mips64el
authorSimon Atanasyan <simon@atanasyan.com>
Sun, 25 Jan 2015 19:15:35 +0000 (19:15 +0000)
committerSimon Atanasyan <simon@atanasyan.com>
Sun, 25 Jan 2015 19:15:35 +0000 (19:15 +0000)
commit0712650742447e124505ff14dfa1b5eba68996bb
tree1c65b3b484e87d198b3d02dbd329e5c4ab2a43d7
parent07e8a406d60bdf0f47aaab517e6616ef52067c31
[Mips] Teach LLD to recognize one more MIPS target triple - mips64el

This is initial patch to support MIPS64 object files linking.
The patch just makes some classes more generalized, and rejects
attempts to interlinking O32 and N64 ABI object files.

I try to reuse the current MIPS target related classes as much as
possible because O32 and N64 MIPS ABI are tightly related and share
almost the same set of relocations, GOT, flags etc.

llvm-svn: 227058
24 files changed:
lld/lib/Driver/GnuLdDriver.cpp
lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp
lld/lib/ReaderWriter/ELF/Mips/MipsELFFlagsMerger.cpp
lld/lib/ReaderWriter/ELF/Mips/MipsELFFlagsMerger.h
lld/lib/ReaderWriter/ELF/Mips/MipsLinkingContext.cpp
lld/lib/ReaderWriter/ELF/Mips/MipsLinkingContext.h
lld/lib/ReaderWriter/ELF/Mips/MipsRelocationHandler.cpp
lld/lib/ReaderWriter/ELF/Mips/MipsRelocationHandler.h
lld/lib/ReaderWriter/ELF/Mips/MipsRelocationPass.cpp
lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.cpp
lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.h
lld/test/elf/Mips/base-address-64.test [new file with mode: 0644]
lld/test/elf/Mips/dynlib-fileheader-64.test [new file with mode: 0644]
lld/test/elf/Mips/dynlib-fileheader-micro-64.test [new file with mode: 0644]
lld/test/elf/Mips/e-flags-merge-1-64.test [new file with mode: 0644]
lld/test/elf/Mips/e-flags-merge-2-64.test [new file with mode: 0644]
lld/test/elf/Mips/e-flags-merge-3-64.test [new file with mode: 0644]
lld/test/elf/Mips/e-flags-merge-4-64.test [new file with mode: 0644]
lld/test/elf/Mips/e-flags-merge-5-64.test [new file with mode: 0644]
lld/test/elf/Mips/e-flags-merge-6-64.test [new file with mode: 0644]
lld/test/elf/Mips/e-flags-merge-7-64.test [new file with mode: 0644]
lld/test/elf/Mips/exe-fileheader-64.test [new file with mode: 0644]
lld/test/elf/Mips/exe-fileheader-micro-64.test [new file with mode: 0644]
lld/test/elf/Mips/interpreter-64.test [new file with mode: 0644]