diff options
author | hpoussin <32227662+hpoussin@users.noreply.github.com> | 2024-10-15 04:50:51 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-15 10:50:51 +0800 |
commit | 97ccd868cb2da36c5acfbabeb61d4b8323a22639 (patch) | |
tree | 77fbc18f948c6af5d10160e77bbd7985db3af0f5 /llvm/lib/Object/COFFObjectFile.cpp | |
parent | c6ba7b38db4aa652ffb58928d079769e19522965 (diff) | |
download | llvm-97ccd868cb2da36c5acfbabeb61d4b8323a22639.zip llvm-97ccd868cb2da36c5acfbabeb61d4b8323a22639.tar.gz llvm-97ccd868cb2da36c5acfbabeb61d4b8323a22639.tar.bz2 |
[COFF] Add MIPS relocation types (#107814)
Add the MIPS COFF relocation types. They will be needed to add support
for MIPS Windows object file.
This is an extract of PR
https://github.com/llvm/llvm-project/pull/107744.
Diffstat (limited to 'llvm/lib/Object/COFFObjectFile.cpp')
-rw-r--r-- | llvm/lib/Object/COFFObjectFile.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/lib/Object/COFFObjectFile.cpp b/llvm/lib/Object/COFFObjectFile.cpp index 3ec7a44..7f21be2 100644 --- a/llvm/lib/Object/COFFObjectFile.cpp +++ b/llvm/lib/Object/COFFObjectFile.cpp @@ -1465,6 +1465,27 @@ StringRef COFFObjectFile::getRelocationTypeName(uint16_t Type) const { return "Unknown"; } break; + case Triple::mipsel: + switch (Type) { + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_ABSOLUTE); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_REFHALF); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_REFWORD); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_JMPADDR); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_REFHI); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_REFLO); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_GPREL); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_LITERAL); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_SECTION); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_SECREL); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_SECRELLO); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_SECRELHI); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_JMPADDR16); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_REFWORDNB); + LLVM_COFF_SWITCH_RELOC_TYPE_NAME(IMAGE_REL_MIPS_PAIR); + default: + return "Unknown"; + } + break; default: return "Unknown"; } |