61 lines · plain
1// REQUIRES: x862 3/// When copying local symbols, skip those defined in discarded sections.4 5// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t6// RUN: ld.lld %t -o %t2 -shared --gc-sections7// RUN: llvm-readobj --symbols -S --section-data %t2 | FileCheck %s8 9.global foo10foo:11 12.section .bar,"a"13zed:14 15// CHECK: Name: .strtab16// CHECK-NEXT: Type: SHT_STRTAB17// CHECK-NEXT: Flags [18// CHECK-NEXT: ]19// CHECK-NEXT: Address:20// CHECK-NEXT: Offset:21// CHECK-NEXT: Size:22// CHECK-NEXT: Link:23// CHECK-NEXT: Info:24// CHECK-NEXT: AddressAlignment:25// CHECK-NEXT: EntrySize:26// CHECK-NEXT: SectionData (27// CHECK-NEXT: 0000: 00666F6F 005F4459 4E414D49 4300 |.foo._DYNAMIC.|28// CHECK-NEXT: )29 30// CHECK: Symbols [31// CHECK-NEXT: Symbol {32// CHECK-NEXT: Name: (0)33// CHECK-NEXT: Value: 0x034// CHECK-NEXT: Size: 035// CHECK-NEXT: Binding: Local36// CHECK-NEXT: Type: None37// CHECK-NEXT: Other: 038// CHECK-NEXT: Section: Undefined39// CHECK-NEXT: }40// CHECK-NEXT: Symbol {41// CHECK-NEXT: Name: _DYNAMIC42// CHECK-NEXT: Value:43// CHECK-NEXT: Size: 044// CHECK-NEXT: Binding: Local45// CHECK-NEXT: Type: None46// CHECK-NEXT: Other [ (0x2)47// CHECK-NEXT: STV_HIDDEN48// CHECK-NEXT: ]49// CHECK-NEXT: Section: .dynamic50// CHECK-NEXT: }51// CHECK-NEXT: Symbol {52// CHECK-NEXT: Name: foo53// CHECK-NEXT: Value:54// CHECK-NEXT: Size:55// CHECK-NEXT: Binding: Global56// CHECK-NEXT: Type: None57// CHECK-NEXT: Other:58// CHECK-NEXT: Section: .text59// CHECK-NEXT: }60// CHECK-NEXT: ]61