diff options
| author | Simon Atanasyan <simon@atanasyan.com> | 2014-12-24 12:19:18 +0000 |
|---|---|---|
| committer | Simon Atanasyan <simon@atanasyan.com> | 2014-12-24 12:19:18 +0000 |
| commit | 375f07a919a4d304b8d7fb35ccca2e0df32cde34 (patch) | |
| tree | f7e4859a9fa3aaba4f78ee3032edd4818421c9d9 | |
| parent | 4195dff0fb2b259f69aa017b10048f685ad38bc4 (diff) | |
| download | bcm5719-llvm-375f07a919a4d304b8d7fb35ccca2e0df32cde34.tar.gz bcm5719-llvm-375f07a919a4d304b8d7fb35ccca2e0df32cde34.zip | |
[Mips] Use OR operation to set the microMIPS bit
llvm-svn: 224813
| -rw-r--r-- | lld/lib/ReaderWriter/ELF/Mips/MipsDynamicTable.h | 2 | ||||
| -rw-r--r-- | lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsDynamicTable.h b/lld/lib/ReaderWriter/ELF/Mips/MipsDynamicTable.h index f61862288c0..db4f631d54c 100644 --- a/lld/lib/ReaderWriter/ELF/Mips/MipsDynamicTable.h +++ b/lld/lib/ReaderWriter/ELF/Mips/MipsDynamicTable.h @@ -97,7 +97,7 @@ protected: if (const auto *da = dyn_cast<DefinedAtom>(al->_atom)) if (da->codeModel() == DefinedAtom::codeMipsMicro || da->codeModel() == DefinedAtom::codeMipsMicroPIC) - return al->_virtualAddr + 1; + return al->_virtualAddr | 1; return al->_virtualAddr; } diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h b/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h index 01aed1c6a70..0df27107325 100644 --- a/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h +++ b/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h @@ -66,7 +66,7 @@ std::error_code MipsExecutableWriter<ELFT>::setELFHeader() { if (ea->codeModel() == DefinedAtom::codeMipsMicro || ea->codeModel() == DefinedAtom::codeMipsMicroPIC) // Adjust entry symbol value if this symbol is microMIPS encoded. - this->_elfHeader->e_entry(al->_virtualAddr + 1); + this->_elfHeader->e_entry(al->_virtualAddr | 1); } _writeHelper.setELFHeader(*this->_elfHeader); |

