xref: /llvm-project/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak_duplicate.s (revision 8ad75c1037289b06bd1b95ff445797d380d93039)
1# RUN: rm -rf %t && mkdir -p %t
2# RUN: yaml2obj %S/Inputs/COFF_comdat_weak_def.yaml -o %t/COFF_weak_1.o
3# RUN: yaml2obj %S/Inputs/COFF_comdat_weak_def.yaml -o %t/COFF_weak_2.o
4# RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t/COFF_main.o
5# RUN:
6# RUN: llvm-jitlink -noexec %t/COFF_main.o %t/COFF_weak_1.o %t/COFF_weak_2.o \
7# RUN: -slab-allocate 100Kb -slab-address 0xfff00000 -slab-page-size 4096 \
8# RUN: -show-graphs='.*' -noexec 2>&1 | FileCheck %s
9#
10# Check that duplicate comdat any definitions don't generate duplicate definition error.
11#
12# CHECK: section weakfunc:
13# CHECK-EMPTY:
14# CHECK-NEXT:  block 0xfff01000 size = 0x00000001, align = 16, alignment-offset = 0
15# CHECK-NEXT:    symbols:
16# CHECK-NEXT:      0xfff01000 (block + 0x00000000): size: 0x00000001, linkage: weak, scope: default, live  -   func
17# CHECK-NEXT:    no edges
18
19	.text
20
21	.def	main;
22	.scl	2;
23	.type	32;
24	.endef
25	.globl	main
26	.p2align	4, 0x90
27main:
28    callq func
29	retq
30