forked from OSchip/llvm-project
Add support for archives with no symbol table or string table.
llvm-svn: 185664
This commit is contained in:
parent
dcc8935499
commit
1cbed22836
|
@ -104,7 +104,7 @@ Archive::Archive(MemoryBuffer *source, error_code &ec)
|
||||||
: Binary(Binary::ID_Archive, source) {
|
: Binary(Binary::ID_Archive, source) {
|
||||||
// Check for sufficient magic.
|
// Check for sufficient magic.
|
||||||
if (!source || source->getBufferSize()
|
if (!source || source->getBufferSize()
|
||||||
< (8 + sizeof(ArchiveMemberHeader) + 2) // Smallest archive.
|
< (8 + sizeof(ArchiveMemberHeader)) // Smallest archive.
|
||||||
|| StringRef(source->getBufferStart(), 8) != Magic) {
|
|| StringRef(source->getBufferStart(), 8) != Magic) {
|
||||||
ec = object_error::invalid_file_type;
|
ec = object_error::invalid_file_type;
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
!<arch>
|
||||||
|
test/ 1372964340 1000 1000 100664 0 `
|
|
@ -9,6 +9,9 @@ RUN: llvm-nm %t2 | FileCheck %s -check-prefix BITCODE
|
||||||
Test we don't error with an archive with no symtab.
|
Test we don't error with an archive with no symtab.
|
||||||
RUN: llvm-nm %p/Inputs/archive-test.a-gnu-no-symtab
|
RUN: llvm-nm %p/Inputs/archive-test.a-gnu-no-symtab
|
||||||
|
|
||||||
|
Or in an archive with no symtab or string table.
|
||||||
|
RUN: llvm-nm %p/Inputs/archive-test.a-gnu-minimal
|
||||||
|
|
||||||
COFF: trivial-object-test.coff-i386:
|
COFF: trivial-object-test.coff-i386:
|
||||||
COFF-NEXT: 00000000 d .data
|
COFF-NEXT: 00000000 d .data
|
||||||
COFF-NEXT: 00000000 t .text
|
COFF-NEXT: 00000000 t .text
|
||||||
|
|
Loading…
Reference in New Issue