Index: ELF/Mips.cpp =================================================================== --- ELF/Mips.cpp +++ ELF/Mips.cpp @@ -285,6 +285,8 @@ std::vector V; for (elf::ObjectFile *F : Symtab::X->getObjectFiles()) V.push_back({F->getName(), F->getObj().getHeader()->e_flags}); + if (V.empty()) + return 0; checkFlags(V); return getMiscFlags(V) | getPicFlags(V) | getArchFlags(V); } Index: test/ELF/mips-no-objects.s =================================================================== --- test/ELF/mips-no-objects.s +++ test/ELF/mips-no-objects.s @@ -0,0 +1,5 @@ +# REQUIRES: mips +# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o +# RUN: ld.lld %t.o -shared -o %t.so +# RUN: ld.lld %t.so -shared -o %t2.so +# RUN: llvm-readobj %t2.so > /dev/null 2>&1