| ## Show that llvm-nm prints the symbols of all ELF members of an archive. |
| |
| # RUN: yaml2obj %s --docnum=1 -o %t1.o |
| # RUN: yaml2obj %s --docnum=2 -o %t2.o |
| |
| # RUN: rm -f %t.symtab |
| # RUN: llvm-ar rc %t.symtab %t1.o %t2.o |
| # RUN: llvm-nm %t.symtab | FileCheck %s --match-full-lines |
| |
| # RUN: rm -f %t.nosymtab |
| # RUN: llvm-ar rcS %t.nosymtab %t1.o %t2.o |
| # RUN: llvm-nm %t.nosymtab | FileCheck %s --match-full-lines |
| |
| # CHECK: {{.*}}1.o: |
| # CHECK-NEXT: 00000002 D global_data_symbol |
| # CHECK-NEXT: 00000000 T global_function_symbol |
| # CHECK-EMPTY: |
| # CHECK-NEXT: {{.*}}2.o: |
| # CHECK-NEXT: 00000001 D another_data_symbol |
| |
| --- !ELF |
| FileHeader: |
| Class: ELFCLASS32 |
| Data: ELFDATA2LSB |
| Type: ET_REL |
| Machine: EM_386 |
| Sections: |
| - Name: .text |
| Type: SHT_PROGBITS |
| Flags: [SHF_ALLOC, SHF_EXECINSTR] |
| - Name: .data |
| Type: SHT_PROGBITS |
| Flags: [SHF_ALLOC, SHF_WRITE] |
| Symbols: |
| - Name: global_function_symbol |
| Value: 0x0 |
| Binding: STB_GLOBAL |
| Section: .text |
| - Name: global_data_symbol |
| Binding: STB_GLOBAL |
| Section: .data |
| Value: 0x2 |
| |
| --- !ELF |
| FileHeader: |
| Class: ELFCLASS32 |
| Data: ELFDATA2LSB |
| Type: ET_REL |
| Machine: EM_386 |
| Sections: |
| - Name: .data |
| Type: SHT_PROGBITS |
| Flags: [SHF_ALLOC, SHF_WRITE] |
| Symbols: |
| - Name: another_data_symbol |
| Binding: STB_GLOBAL |
| Section: .data |
| Value: 0x1 |