| # RUN: yaml2obj %s -o %t.o |
| |
| # Tests --keep-global-symbol when used in combination with --globalize-symbol on |
| # a different symbol. |
| |
| # RUN: llvm-objcopy \ |
| # RUN: --globalize-symbol Local1 \ |
| # RUN: --keep-global-symbol Local2 \ |
| # RUN: --globalize-symbol Weak1 \ |
| # RUN: --keep-global-symbol Weak2 \ |
| # RUN: --globalize-symbol Global1 \ |
| # RUN: --keep-global-symbol Global2 \ |
| # RUN: %t.o %t.2.o |
| # RUN: llvm-readelf --symbols %t.2.o | FileCheck %s |
| |
| !ELF |
| FileHeader: |
| Class: ELFCLASS64 |
| Data: ELFDATA2LSB |
| Type: ET_REL |
| Machine: EM_X86_64 |
| Sections: |
| - Name: .text |
| Type: SHT_PROGBITS |
| Flags: [ SHF_ALLOC, SHF_EXECINSTR ] |
| Symbols: |
| - Name: Local1 |
| Section: .text |
| - Name: Local2 |
| Section: .text |
| - Name: Global1 |
| Section: .text |
| Binding: STB_GLOBAL |
| - Name: Global2 |
| Section: .text |
| Binding: STB_GLOBAL |
| - Name: Weak1 |
| Section: .text |
| Binding: STB_WEAK |
| - Name: Weak2 |
| Section: .text |
| Binding: STB_WEAK |
| |
| # CHECK: Symbol table '.symtab' contains 7 entries: |
| # CHECK-NEXT: Num: Value Size Type Bind Vis Ndx Name |
| # CHECK-NEXT: 0: {{.*}} LOCAL {{.*}} |
| # CHECK-NEXT: 1: {{.*}} LOCAL {{.*}} Local2 |
| # CHECK-NEXT: 2: {{.*}} GLOBAL {{.*}} Local1 |
| # CHECK-NEXT: 3: {{.*}} GLOBAL {{.*}} Global1 |
| # CHECK-NEXT: 4: {{.*}} GLOBAL {{.*}} Global2 |
| # CHECK-NEXT: 5: {{.*}} GLOBAL {{.*}} Weak1 |
| # CHECK-NEXT: 6: {{.*}} WEAK {{.*}} Weak2 |