Skip to content

Commit bfb0a51

Browse files
committed
[llvm-jitlink] Use -num-threads=0 for regression tests relying on debug output.
ORC and JITLink debugging output write the dbgs() raw_ostream, which isn't thread-safe. Use -num-threads=0 to force single-threaded linking for tests that produce debugging output. The llvm-jitlink tool is updated to suggest -num-threads=0 when debugging output is enabled.
1 parent dde5546 commit bfb0a51

36 files changed

+143
-116
lines changed

llvm/lib/ExecutionEngine/Orc/Core.cpp

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1821,17 +1821,10 @@ ExecutionSession::lookup(const JITDylibSearchOrder &SearchOrder,
18211821
RegisterDependenciesFunction RegisterDependencies) {
18221822
#if LLVM_ENABLE_THREADS
18231823
// In the threaded case we use promises to return the results.
1824-
std::promise<SymbolMap> PromisedResult;
1825-
Error ResolutionError = Error::success();
1824+
std::promise<MSVCPExpected<SymbolMap>> PromisedResult;
18261825

18271826
auto NotifyComplete = [&](Expected<SymbolMap> R) {
1828-
if (R)
1829-
PromisedResult.set_value(std::move(*R));
1830-
else {
1831-
ErrorAsOutParameter _(ResolutionError);
1832-
ResolutionError = R.takeError();
1833-
PromisedResult.set_value(SymbolMap());
1834-
}
1827+
PromisedResult.set_value(std::move(R));
18351828
};
18361829

18371830
#else
@@ -1848,18 +1841,11 @@ ExecutionSession::lookup(const JITDylibSearchOrder &SearchOrder,
18481841
#endif
18491842

18501843
// Perform the asynchronous lookup.
1851-
lookup(K, SearchOrder, std::move(Symbols), RequiredState, NotifyComplete,
1852-
RegisterDependencies);
1844+
lookup(K, SearchOrder, std::move(Symbols), RequiredState,
1845+
std::move(NotifyComplete), RegisterDependencies);
18531846

18541847
#if LLVM_ENABLE_THREADS
1855-
auto ResultFuture = PromisedResult.get_future();
1856-
auto Result = ResultFuture.get();
1857-
1858-
if (ResolutionError)
1859-
return std::move(ResolutionError);
1860-
1861-
return std::move(Result);
1862-
1848+
return PromisedResult.get_future().get();
18631849
#else
18641850
if (ResolutionError)
18651851
return std::move(ResolutionError);

llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=armv7-linux-gnueabi -arm-add-build-attributes -filetype=obj -o %t_armv7.o %s
33
# RUN: llvm-objdump -s --section=.rodata %t_armv7.o | FileCheck --check-prefix=CHECK-OBJ %s
4-
# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \
5-
# RUN: -slab-page-size 4096 %t_armv7.o -debug-only=jitlink 2>&1 \
4+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
5+
# RUN: -slab-address 0x76ff0000 -slab-allocate 10Kb \
6+
# RUN: -slab-page-size 4096 %t_armv7.o 2>&1 \
67
# RUN: | FileCheck --check-prefix=CHECK-LG %s
78
# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \
89
# RUN: -slab-page-size 4096 %t_armv7.o -check %s
910

1011
# RUN: llvm-mc -triple=thumbv7-linux-gnueabi -arm-add-build-attributes -filetype=obj -o %t_thumbv7.o %s
1112
# RUN: llvm-objdump -s --section=.rodata %t_thumbv7.o | FileCheck --check-prefix=CHECK-OBJ %s
12-
# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \
13-
# RUN: -slab-page-size 4096 %t_thumbv7.o -debug-only=jitlink 2>&1 \
13+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
14+
# RUN: -slab-address 0x76ff0000 -slab-allocate 10Kb \
15+
# RUN: -slab-page-size 4096 %t_thumbv7.o 2>&1 \
1416
# RUN: | FileCheck --check-prefix=CHECK-LG %s
1517
# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \
1618
# RUN: -slab-page-size 4096 %t_thumbv7.o -check %s

llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=aarch64-linux-gnu -filetype=obj -o %t %s
3-
# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \
4-
# RUN: FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
4+
# RUN: -phony-externals %t 2>&1 | FileCheck %s
55
#
66
# Check that splitting of eh-frame sections works.
77
#

llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=arm64-apple-ios -filetype=obj -o %t %s
3-
# RUN: llvm-jitlink -noexec -debug-only=jitlink %t 2>&1 | FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
45
#
56
# Check that splitting of compact-unwind sections works.
67
#

llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=arm64-apple-darwin11 -filetype=obj -o %t %s
3-
# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \
4-
# RUN: FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
4+
# RUN: -phony-externals %t 2>&1 | FileCheck %s
55
#
66
# Check that splitting of eh-frame sections works.
77
#

llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# REQUIRES: asserts
2-
# RUN: llvm-mc --triple=loongarch64-linux-gnu --filetype=obj -o %t %s
3-
# RUN: llvm-jitlink --noexec --phony-externals --debug-only=jitlink %t 2>&1 | \
4-
# RUN: FileCheck %s
2+
# RUN: llvm-mc -triple=loongarch64-linux-gnu -filetype=obj -o %t %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
4+
# RUN: -phony-externals %t 2>&1 | FileCheck %s
55

66
## Check that splitting of eh-frame sections works.
77

llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=riscv32 -mattr=+relax -filetype=obj -o %t.rv32 %s
3-
# RUN: llvm-jitlink -noexec \
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
44
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
5-
# RUN: -debug-only=jitlink -check %s %t.rv32 \
6-
# RUN: 2>&1 | FileCheck %s
5+
# RUN: -check %s %t.rv32 2>&1 \
6+
# RUN: | FileCheck %s
77

88
# RUN: llvm-mc -triple=riscv64 -mattr=+relax -filetype=obj -o %t.rv64 %s
9-
# RUN: llvm-jitlink -noexec \
9+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
1010
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
11-
# RUN: -debug-only=jitlink -check %s %t.rv64 \
12-
# RUN: 2>&1 | FileCheck %s
11+
# RUN: -check %s %t.rv64 2>&1 \
12+
# RUN: | FileCheck %s
1313

1414
.text
1515

llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=riscv32 -mattr=+relax,+c -filetype=obj -o %t.rv32 %s
3-
# RUN: llvm-jitlink -noexec \
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
44
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
5-
# RUN: -debug-only=jitlink -check %s %t.rv32 \
6-
# RUN: 2>&1 | FileCheck %s
7-
# RUN: llvm-jitlink -noexec \
5+
# RUN: -check %s %t.rv32 2>&1 \
6+
# RUN: | FileCheck %s
7+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
88
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
9-
# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv32 %t.rv32 \
10-
# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV32 %s
9+
# RUN: -check %s -check-name=jitlink-check-rv32 %t.rv32 2>&1 \
10+
# RUN: | FileCheck -check-prefix=CHECK-RV32 %s
1111

1212
# RUN: llvm-mc -triple=riscv64 -mattr=+relax,+c -filetype=obj -o %t.rv64 %s
13-
# RUN: llvm-jitlink -noexec \
13+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
1414
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
15-
# RUN: -debug-only=jitlink -check %s %t.rv64 \
16-
# RUN: 2>&1 | FileCheck %s
17-
# RUN: llvm-jitlink -noexec \
15+
# RUN: -check %s %t.rv64 2>&1 \
16+
# RUN: | FileCheck %s
17+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
1818
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
19-
# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv64 %t.rv64 \
20-
# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV64 %s
19+
# RUN: -check %s -check-name=jitlink-check-rv64 %t.rv64 2>&1 \
20+
# RUN: | FileCheck -check-prefix=CHECK-RV64 %s
2121

2222
# RUN: llvm-mc -triple=riscv32 -mattr=+relax,+zca -filetype=obj -o %t.rv32zca %s
23-
# RUN: llvm-jitlink -noexec \
23+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
2424
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
25-
# RUN: -debug-only=jitlink -check %s %t.rv32zca \
26-
# RUN: 2>&1 | FileCheck %s
27-
# RUN: llvm-jitlink -noexec \
25+
# RUN: -check %s %t.rv32zca 2>&1 \
26+
# RUN: | FileCheck %s
27+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
2828
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
29-
# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv32 %t.rv32zca \
30-
# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV32 %s
29+
# RUN: -check %s -check-name=jitlink-check-rv32 %t.rv32zca 2>&1 \
30+
# RUN: | FileCheck -check-prefix=CHECK-RV32 %s
3131

3232
# RUN: llvm-mc -triple=riscv64 -mattr=+relax,+c -filetype=obj -o %t.rv64 %s
33-
# RUN: llvm-jitlink -noexec \
33+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
3434
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
35-
# RUN: -debug-only=jitlink -check %s %t.rv64 \
36-
# RUN: 2>&1 | FileCheck %s
37-
# RUN: llvm-jitlink -noexec \
35+
# RUN: -check %s %t.rv64 2>&1 \
36+
# RUN: | FileCheck %s
37+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
3838
# RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \
39-
# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv64 %t.rv64 \
40-
# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV64 %s
39+
# RUN: -check %s -check-name=jitlink-check-rv64 %t.rv64 2>&1 \
40+
# RUN: | FileCheck -check-prefix=CHECK-RV64 %s
4141

4242
.text
4343

llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=riscv64 -filetype=obj -o %t %s
3-
# RUN: llvm-jitlink -debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
3+
# RUN: llvm-jitlink -debug-only=jitlink -num-threads=0 -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
45
#
56
# Because of the exist of cfi directive, sections like eh_frame section will be emitted
67
# in llvm's object code emission phase. Anonymous symbols will also be emitted to indicate

llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -triple=powerpc64le-unknown-linux-gnu -filetype=obj -o %t %s
3-
# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \
4-
# RUN: FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec -phony-externals \
4+
# RUN: %t 2>&1 \
5+
# RUN: | FileCheck %s
56
# RUN: llvm-mc -triple=powerpc64-unknown-linux-gnu -filetype=obj -o %t %s
6-
# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \
7-
# RUN: FileCheck %s
7+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec -phony-externals \
8+
# RUN: %t 2>&1 \
9+
# RUN: | FileCheck %s
810
#
911
# Check that splitting of eh-frame sections works.
1012
#

llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@
44
# RUN: %t/external_weak.o %S/Inputs/external_weak.s
55
# RUN: llvm-mc -triple=powerpc64le-unknown-linux-gnu -filetype=obj -o \
66
# RUN: %t/external_weak_main.o %S/Inputs/external_weak_main.s
7-
# RUN: llvm-jitlink -noexec -debug-only=jitlink %t/external_weak.o \
8-
# RUN: %t/external_weak_main.o 2>&1 | FileCheck %s
7+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
8+
# RUN: %t/external_weak.o %t/external_weak_main.o 2>&1 \
9+
# RUN: | FileCheck %s
910
# CHECK: Created ELFLinkGraphBuilder for "{{.*}}external_weak_main.o"
1011
# CHECK: Creating defined graph symbol for ELF symbol "foo"
1112
# CHECK: External symbols:

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t
3-
# RUN: llvm-jitlink --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
45
#
56
# Check absolute symbol is created with a correct value.
67
#

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check a weak symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_ANY selection type.
67
#
78
# CHECK: Creating graph symbols...

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check COMDAT associative symbol is emitted as local symbol.
67
#
7-
# CHECK: Creating graph symbols...
8-
# CHECK: 2: Creating defined graph symbol for COFF symbol ".text" in .text (index: 2)
9-
# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000001, linkage: strong, scope: local, dead - <anonymous symbol>
10-
# CHECK-NEXT: 4: Exporting COMDAT graph symbol for COFF symbol "func" in section 2
11-
# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000001, linkage: weak, scope: default, dead - func
12-
# CHECK-NEXT: 5: Creating defined graph symbol for COFF symbol ".xdata" in .xdata (index: 3)
13-
# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: strong, scope: local, dead - .xdata
8+
# CHECK: Creating graph symbols...
9+
# CHECK: 0: Creating defined graph symbol for COFF symbol ".text" in .text (index: 1)
10+
# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: strong, scope: local, dead - .text
11+
# CHECK-NEXT: 4: Exporting COMDAT graph symbol for COFF symbol "func" in section 2
12+
# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: weak, scope: default, dead - func
13+
# CHECK-NEXT: 4: Creating defined graph symbol for COFF symbol "func" in .text (index: 2)
14+
# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: weak, scope: default, dead - func
15+
# CHECK-NEXT: 5: Creating defined graph symbol for COFF symbol ".xdata" in .xdata (index: 3)
16+
# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: strong, scope: local, dead - .xdata
1417

1518
--- !COFF
1619
header:

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check a weak symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_EXACT_MATCH selection type.
67
# Doesn't check the content validation.
78
#

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check a comdat export is done correctly even if second symbol of comdat sequences appear out of order
67
#
78
# CHECK: Creating graph symbols...

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check jitlink handles largest selection type as plain weak symbol.
67
#
78
# CHECK: Creating graph symbols...

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check a strong symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_NODUPLICATES selection type.
67
#
78
# CHECK: Creating graph symbols...

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check a COMDAT symbol with an offset is handled correctly.
67
#
78
# CHECK: Creating graph symbols...

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
4-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
5+
#
56
# Check a weak symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_SAME_SIZE selection type.
67
# Doesn't check the size validation.
78
#

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t
3-
# RUN: llvm-jitlink --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
45
#
56
# Check a COMDAT any symbol is exported as a weak symbol.
67
#

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t
3-
# RUN: llvm-jitlink --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \
4+
# RUN: | FileCheck %s
45
#
56
# Check a common symbol is created.
67
#

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# REQUIRES: asserts
22
# RUN: yaml2obj %s -o %t
3-
# RUN: llvm-jitlink -noexec -abs __ImageBase=0xfff00000 \
4-
# RUN: --debug-only=jitlink \
5-
# RUN: -slab-allocate 100Kb -slab-address 0xfff00000 -slab-page-size 4096 \
6-
# RUN: %t 2>&1 | FileCheck %s
7-
#
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
4+
# RUN: -abs __ImageBase=0xfff00000 -slab-allocate 100Kb \
5+
# RUN: -slab-address 0xfff00000 -slab-page-size 4096 %t 2>&1 \
6+
# RUN: | FileCheck %s
7+
#
88
# Check duplicate undefined external symbols are handled correctly.
99
#
1010
# CHECK: Creating graph symbols...

llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# REQUIRES: asserts
22
# RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t
3-
# RUN: llvm-jitlink -abs func=0xcafef00d --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
3+
# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \
4+
# RUN: -abs func=0xcafef00d %t 2>&1 \
5+
# RUN: | FileCheck %s
46
#
57
# Check a file debug symbol is skipped.
68
#

0 commit comments

Comments
 (0)