[clang-tidy][modernize-use-starts-ends-with] Fix operator rewriting false negative...
[llvm-project.git] / lld / test / ELF / local-dynamic.s
blob8c7cd870ef47d7f2e3cfff5bc18ea586f6e69fd7
1 // REQUIRES: x86
2 // Check that local symbols are not inserted into dynamic table.
3 // RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
4 // RUN: ld.lld %t -shared -o %t1.so
5 // RUN: llvm-readobj --symbols --dyn-syms %t1.so | FileCheck %s
7 // CHECK: Symbols [
8 // CHECK-NEXT: Symbol {
9 // CHECK-NEXT: Name:
10 // CHECK-NEXT: Value: 0x0
11 // CHECK-NEXT: Size: 0
12 // CHECK-NEXT: Binding: Local
13 // CHECK-NEXT: Type: None
14 // CHECK-NEXT: Other: 0
15 // CHECK-NEXT: Section: Undefined
16 // CHECK-NEXT: }
17 // CHECK-NEXT: Symbol {
18 // CHECK-NEXT: Name: blah
19 // CHECK-NEXT: Value:
20 // CHECK-NEXT: Size: 0
21 // CHECK-NEXT: Binding: Local
22 // CHECK-NEXT: Type: None
23 // CHECK-NEXT: Other: 0
24 // CHECK-NEXT: Section: .text
25 // CHECK-NEXT: }
26 // CHECK-NEXT: Symbol {
27 // CHECK-NEXT: Name: foo
28 // CHECK-NEXT: Value:
29 // CHECK-NEXT: Size: 0
30 // CHECK-NEXT: Binding: Local
31 // CHECK-NEXT: Type: None
32 // CHECK-NEXT: Other: 0
33 // CHECK-NEXT: Section: .text
34 // CHECK-NEXT: }
35 // CHECK-NEXT: Symbol {
36 // CHECK-NEXT: Name: goo
37 // CHECK-NEXT: Value:
38 // CHECK-NEXT: Size: 0
39 // CHECK-NEXT: Binding: Local
40 // CHECK-NEXT: Type: None
41 // CHECK-NEXT: Other: 0
42 // CHECK-NEXT: Section: .text
43 // CHECK-NEXT: }
44 // CHECK-NEXT: Symbol {
45 // CHECK-NEXT: Name: _DYNAMIC
46 // CHECK-NEXT: Value:
47 // CHECK-NEXT: Size: 0
48 // CHECK-NEXT: Binding: Local
49 // CHECK-NEXT: Type: None
50 // CHECK-NEXT: Other [ (0x2)
51 // CHECK-NEXT: STV_HIDDEN
52 // CHECK-NEXT: ]
53 // CHECK-NEXT: Section: .dynamic
54 // CHECK-NEXT: }
55 // CHECK-NEXT: Symbol {
56 // CHECK-NEXT: Name: _start
57 // CHECK-NEXT: Value:
58 // CHECK-NEXT: Size: 0
59 // CHECK-NEXT: Binding: Global
60 // CHECK-NEXT: Type: None
61 // CHECK-NEXT: Other: 0
62 // CHECK-NEXT: Section: .text
63 // CHECK-NEXT: }
64 // CHECK-NEXT: ]
66 // CHECK: DynamicSymbols [
67 // CHECK-NEXT: Symbol {
68 // CHECK-NEXT: Name:
69 // CHECK-NEXT: Value: 0x0
70 // CHECK-NEXT: Size: 0
71 // CHECK-NEXT: Binding: Local
72 // CHECK-NEXT: Type: None
73 // CHECK-NEXT: Other: 0
74 // CHECK-NEXT: Section: Undefined
75 // CHECK-NEXT: }
76 // CHECK-NEXT: Symbol {
77 // CHECK-NEXT: Name: _start
78 // CHECK-NEXT: Value:
79 // CHECK-NEXT: Size: 0
80 // CHECK-NEXT: Binding: Global
81 // CHECK-NEXT: Type: None
82 // CHECK-NEXT: Other: 0
83 // CHECK-NEXT: Section: .text
84 // CHECK-NEXT: }
85 // CHECK-NEXT: ]
87 .global _start
88 _start:
90 blah:
91 foo:
92 goo: