1// REQUIRES: x86
2// RUN: llvm-mc %p/Inputs/shared.s -o %t.o -filetype=obj -triple=x86_64-pc-linux
3// RUN: llvm-mc %s -o %t2.o -filetype=obj -triple=x86_64-pc-linux
4// RUN: ld.lld %t.o -o %t.so -shared
5// RUN: ld.lld %t2.o %t.so -o %t.exe
6// RUN: llvm-readobj --dyn-symbols %t.exe | FileCheck %s
7
8        .global _start
9_start:
10        .global bar
11        .hidden bar
12bar:
13
14        .global bar2
15bar2:
16
17        .global foo
18foo:
19
20// CHECK:      DynamicSymbols [
21// CHECK-NEXT:   Symbol {
22// CHECK-NEXT:     Name:
23// CHECK-NEXT:     Value: 0x0
24// CHECK-NEXT:     Size: 0
25// CHECK-NEXT:     Binding: Local
26// CHECK-NEXT:     Type: None
27// CHECK-NEXT:     Other: 0
28// CHECK-NEXT:     Section: Undefined
29// CHECK-NEXT:   }
30// CHECK-NEXT:   Symbol {
31// CHECK-NEXT:     Name: bar2
32// CHECK-NEXT:     Value:
33// CHECK-NEXT:     Size: 0
34// CHECK-NEXT:     Binding: Global
35// CHECK-NEXT:     Type: None
36// CHECK-NEXT:     Other: 0
37// CHECK-NEXT:     Section: .text
38// CHECK-NEXT:   }
39// CHECK-NEXT: ]
40
41