Skip to content

Commit 251e820

Browse files
committed
Adjust the test to use multiple options and expand others to use more symbols
1 parent a470b13 commit 251e820

File tree

1 file changed

+25
-4
lines changed

1 file changed

+25
-4
lines changed

llvm/test/tools/llvm-objcopy/ELF/skip-symbol.test

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,17 @@
88
# LH-SYMS-DAG: LOCAL HIDDEN 1 foo1
99
# LH-SYMS-DAG: GLOBAL HIDDEN 1 foo2
1010
# LH-SYMS-DAG: GLOBAL HIDDEN 1 foo3
11+
# LH-SYMS-DAG: LOCAL HIDDEN 1 foo4
12+
# LH-SYMS-DAG: LOCAL HIDDEN 1 foo5
1113

1214
## Check --skip-symbol functionality when changing symbol bindings.
1315
# RUN: llvm-objcopy %t.o %t2.o --localize-hidden --skip-symbol=foo3
1416
# RUN: llvm-readelf -s %t2.o | FileCheck %s --check-prefix=LH-SYM
1517
# LH-SYM-DAG: LOCAL HIDDEN 1 foo1
1618
# LH-SYM-DAG: LOCAL HIDDEN 1 foo2
1719
# LH-SYM-DAG: GLOBAL HIDDEN 1 foo3
20+
# LH-SYM-DAG: LOCAL HIDDEN 1 foo4
21+
# LH-SYM-DAG: LOCAL HIDDEN 1 foo5
1822

1923
## Check --skip-symbols functionality when changing symbol names.
2024
# RUN: echo -e "foo1 bar1\nfoo2 bar2" > %t.renames.list
@@ -24,23 +28,32 @@
2428
# RS-SYMS-DAG: bar1
2529
# RS-SYMS-DAG: foo2
2630
# RS-SYMS-DAG: foo3
31+
# RS-SYMS-DAG: foo4
32+
# RS-SYMS-DAG: foo5
2733

2834
## Check --skip-symbol functionality when changing symbol names.
29-
# RUN: llvm-objcopy %t.o %t4.o --redefine-sym=foo1=bar1 --skip-symbol='fo*' --wildcard
35+
# RUN: llvm-objcopy %t.o %t4.o --redefine-syms=%t.renames.list \
36+
# RUN: --skip-symbol='fo*' --wildcard
3037
# RUN: llvm-readelf -s %t4.o | FileCheck %s --check-prefix=RS-SYM
3138
# RS-SYM-DAG: foo1
3239
# RS-SYM-DAG: foo2
3340
# RS-SYM-DAG: foo3
41+
# RS-SYM-DAG: foo4
42+
# RS-SYM-DAG: foo5
3443

3544
## Check the functionality when using skip options multiple times.
36-
# RUN: echo "foo3" > %t.symbol.list
45+
# RUN: echo "foo3" > %t.symbol0.list
46+
# RUN: echo "foo4" > %t.symbol1.list
3747
# RUN: llvm-objcopy %t.o %t5.o --set-symbol-visibility='foo*'=internal --wildcard \
38-
# RUN: --skip-symbol=foo1 --skip-symbol=foo2 --skip-symbols=%t.symbol.list
48+
# RUN: --skip-symbol=foo1 --skip-symbol=foo2 \
49+
# RUN: --skip-symbols=%t.symbol0.list --skip-symbols=%t.symbol1.list
3950
# RUN: llvm-readelf -s %t5.o | FileCheck %s --check-prefix=BOTH
40-
## All the symbols are skipped.
4151
# BOTH-DAG: GLOBAL HIDDEN 1 foo1
4252
# BOTH-DAG: GLOBAL HIDDEN 1 foo2
4353
# BOTH-DAG: GLOBAL HIDDEN 1 foo3
54+
# BOTH-DAG: GLOBAL HIDDEN 1 foo4
55+
## Only foo5 is not skipped.
56+
# BOTH-DAG: GLOBAL INTERNAL 1 foo5
4457

4558
## Check that using an invalid symbol name regex generates an error.
4659
# RUN: echo '*.' > %t.symbols.regex
@@ -77,3 +90,11 @@ Symbols:
7790
Section: .text
7891
Binding: STB_GLOBAL
7992
Other: [ STV_HIDDEN ]
93+
- Name: foo4
94+
Section: .text
95+
Binding: STB_GLOBAL
96+
Other: [ STV_HIDDEN ]
97+
- Name: foo5
98+
Section: .text
99+
Binding: STB_GLOBAL
100+
Other: [ STV_HIDDEN ]

0 commit comments

Comments
 (0)