X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FObject%2Fnm-archive.test;h=8f8cdbe9f08cf05a12e0782690695fa3779b1674;hb=7a0ec464f16e761602ac9c4e1f610029c0346745;hp=2d96b73a271471bb9d69fea4cdf77901069cce86;hpb=11f99878762e479766370e0cde051547c1c4911b;p=oota-llvm.git diff --git a/test/Object/nm-archive.test b/test/Object/nm-archive.test index 2d96b73a271..8f8cdbe9f08 100644 --- a/test/Object/nm-archive.test +++ b/test/Object/nm-archive.test @@ -1,9 +1,5 @@ -RUN: llvm-nm %p/Inputs/archive-test.a-coff-i386 \ +RUN: llvm-nm -a %p/Inputs/archive-test.a-coff-i386 \ RUN: | FileCheck %s -check-prefix COFF -RUN: llvm-as %p/Inputs/trivial.ll -o=%t1 -RUN: llvm-ar rcs %t2 %t1 -RUN: llvm-nm %t2 | FileCheck %s -check-prefix BITCODE - COFF: trivial-object-test.coff-i386: COFF-NEXT: 00000000 d .data @@ -13,6 +9,61 @@ COFF-NEXT: U _SomeOtherFunction COFF-NEXT: 00000000 T _main COFF-NEXT: U _puts +RUN: llvm-nm -a -o %p/Inputs/archive-test.a-coff-i386 \ +RUN: | FileCheck %s -check-prefix COFF-o + +COFF-o: {{.*}}/archive-test.a-coff-i386:trivial-object-test.coff-i386: 00000000 d .data +COFF-o: {{.*}}/archive-test.a-coff-i386:trivial-object-test.coff-i386: 00000000 t .text +COFF-o: {{.*}}/archive-test.a-coff-i386:trivial-object-test.coff-i386: 00000000 d L_.str +COFF-o: {{.*}}/archive-test.a-coff-i386:trivial-object-test.coff-i386: U _SomeOtherFunction +COFF-o: {{.*}}/archive-test.a-coff-i386:trivial-object-test.coff-i386: 00000000 T _main +COFF-o: {{.*}}/archive-test.a-coff-i386:trivial-object-test.coff-i386: U _puts + +RUN: llvm-as %p/Inputs/trivial.ll -o=%t1 +RUN: rm -f %t2 +RUN: llvm-ar rcs %t2 %t1 +RUN: llvm-nm %t2 | FileCheck %s -check-prefix BITCODE + +RUN: rm -f %t2 +RUN: llvm-lib /out:%t2 %t1 +RUN: llvm-nm %t2 | FileCheck %s -check-prefix BITCODE + +RUN: rm -f %t2 +RUN: echo /out:%t2 %t1 > %t.rsp +RUN: llvm-lib @%t.rsp +RUN: llvm-nm %t2 | FileCheck %s -check-prefix BITCODE + BITCODE: U SomeOtherFunction BITCODE-NEXT: T main BITCODE-NEXT: U puts +BITCODE-NEXT: D var + + +Test we don't error with an archive with 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 + + +And don't crash when asked to print a non-existing symtab. +RUN: llvm-nm -M %p/Inputs/archive-test.a-gnu-minimal + +Don't reject an empty archive. +RUN: llvm-nm %p/Inputs/archive-test.a-empty + +This archive has an unaligned member and a unknown format member. +GNU AR is able to parse the unaligned member and warns about the member with +the unknown format. We should probably simply warn on both. For now just check +that we don't produce an error. +RUN: llvm-nm %p/Inputs/corrupt-archive.a + + +RUN: llvm-nm %p/Inputs/thin.a | FileCheck %s -check-prefix THIN + +THIN: IsNAN.o: +THIN: 00000014 T _ZN4llvm5IsNANEd +THIN: 00000000 T _ZN4llvm5IsNANEf +THIN: U __isnan +THIN: U __isnanf