1; RUN: llc -mtriple=i686-windows-msvc -o - %s | FileCheck -check-prefix=X86 %s
2; RUN: llc -mtriple=x86_64-windows-msvc -o - %s | FileCheck -check-prefix=X64 %s
3
4; X86: .weak _foo
5; X64: .weak foo
6define weak void @foo() {
7  ret void
8}
9
10; X86: .weak _bar
11; X64: .weak bar
12define weak_odr void @bar() {
13  ret void
14}
15
16; X86-NOT: .weak _bar_comdat
17; X64-NOT: .weak bar_comdat
18$bar_comdat = comdat any
19
20define weak_odr void @bar_comdat() comdat {
21  ret void
22}
23
24; X86: .weak _baz
25; X64: .weak baz
26define linkonce void @baz() {
27  ret void
28}
29
30; X86-NOT: .weak _baz_comdat
31; X64-NOT: .weak baz_comdat
32$baz_comdat = comdat any
33
34define linkonce void @baz_comdat() comdat {
35  ret void
36}
37
38; X86: .weak _quux
39; X64: .weak quux
40define linkonce_odr void @quux() {
41  ret void
42}
43
44; X86-NOT: .weak _quux_comdat
45; X64-NOT: .weak quux_comdat
46$quux_comdat = comdat any
47
48define linkonce_odr void @quux_comdat() comdat {
49  ret void
50}
51