blob: 73cc5483bcf6e9eadc2b62b3740d9780888ca2ac [file] [log] [blame]
Reid Klecknerb0f459e2013-05-09 21:10:06 +00001// RUN: %clang_cc1 %s -triple i686-pc-win32 -fms-extensions -emit-llvm -o - | FileCheck %s
2// RUN: %clang_cc1 %s -triple x86_64-pc-win32 -fms-extensions -emit-llvm -o - | FileCheck %s
3// RUN: %clang_cc1 %s -triple i686-pc-linux -fms-extensions -emit-llvm -o - | FileCheck -check-prefix LINUX %s
4
5#pragma comment(lib, "msvcrt.lib")
Aaron Ballmanef50ee92013-05-24 15:06:56 +00006#pragma comment(lib, "kernel32")
7#pragma comment(lib, "USER32.LIB")
Reid Klecknerb0f459e2013-05-09 21:10:06 +00008
9#define BAR "2"
10#pragma comment(linker," /bar=" BAR)
11
Oliver Stannardc8e3b5f2014-06-19 16:10:21 +000012// CHECK: !llvm.module.flags = !{{{.*}}}
13// CHECK: !{{[0-9]+}} = metadata !{i32 6, metadata !"Linker Options", metadata ![[link_opts:[0-9]+]]}
Aaron Ballmanef50ee92013-05-24 15:06:56 +000014// CHECK: ![[link_opts]] = metadata !{metadata ![[msvcrt:[0-9]+]], metadata ![[kernel32:[0-9]+]], metadata ![[USER32:[0-9]+]], metadata ![[bar:[0-9]+]]}
Reid Klecknerb0f459e2013-05-09 21:10:06 +000015// CHECK: ![[msvcrt]] = metadata !{metadata !"/DEFAULTLIB:msvcrt.lib"}
Aaron Ballmanef50ee92013-05-24 15:06:56 +000016// CHECK: ![[kernel32]] = metadata !{metadata !"/DEFAULTLIB:kernel32.lib"}
17// CHECK: ![[USER32]] = metadata !{metadata !"/DEFAULTLIB:USER32.LIB"}
Reid Klecknerb0f459e2013-05-09 21:10:06 +000018// CHECK: ![[bar]] = metadata !{metadata !" /bar=2"}
19
20// LINUX: metadata !{metadata !"-lmsvcrt.lib"}
Aaron Ballmanef50ee92013-05-24 15:06:56 +000021// LINUX: metadata !{metadata !"-lkernel32"}
22// LINUX: metadata !{metadata !"-lUSER32.LIB"}
Reid Klecknerb0f459e2013-05-09 21:10:06 +000023// LINUX: metadata !{metadata !" /bar=2"}