diff options
Diffstat (limited to 'llvm/lib/Object')
-rw-r--r-- | llvm/lib/Object/COFFImportFile.cpp | 2 | ||||
-rw-r--r-- | llvm/lib/Object/WindowsMachineFlag.cpp | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Object/COFFImportFile.cpp b/llvm/lib/Object/COFFImportFile.cpp index ff3dcf9..595533f 100644 --- a/llvm/lib/Object/COFFImportFile.cpp +++ b/llvm/lib/Object/COFFImportFile.cpp @@ -133,6 +133,8 @@ static uint16_t getImgRelRelocation(MachineTypes Machine) { return IMAGE_REL_ARM64_ADDR32NB; case IMAGE_FILE_MACHINE_I386: return IMAGE_REL_I386_DIR32NB; + case IMAGE_FILE_MACHINE_R4000: + return IMAGE_REL_MIPS_REFWORDNB; } } diff --git a/llvm/lib/Object/WindowsMachineFlag.cpp b/llvm/lib/Object/WindowsMachineFlag.cpp index b9f8187..caf357e 100644 --- a/llvm/lib/Object/WindowsMachineFlag.cpp +++ b/llvm/lib/Object/WindowsMachineFlag.cpp @@ -21,6 +21,7 @@ using namespace llvm; // Returns /machine's value. COFF::MachineTypes llvm::getMachineType(StringRef S) { + // Flags must be a superset of Microsoft lib.exe /machine flags. return StringSwitch<COFF::MachineTypes>(S.lower()) .Cases("x64", "amd64", COFF::IMAGE_FILE_MACHINE_AMD64) .Cases("x86", "i386", COFF::IMAGE_FILE_MACHINE_I386) @@ -28,6 +29,7 @@ COFF::MachineTypes llvm::getMachineType(StringRef S) { .Case("arm64", COFF::IMAGE_FILE_MACHINE_ARM64) .Case("arm64ec", COFF::IMAGE_FILE_MACHINE_ARM64EC) .Case("arm64x", COFF::IMAGE_FILE_MACHINE_ARM64X) + .Case("mips", COFF::IMAGE_FILE_MACHINE_R4000) .Default(COFF::IMAGE_FILE_MACHINE_UNKNOWN); } |