Reid Kleckner | b0f459e | 2013-05-09 21:10:06 +0000 | [diff] [blame] | 1 | // 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 Ballman | ef50ee9 | 2013-05-24 15:06:56 +0000 | [diff] [blame] | 6 | #pragma comment(lib, "kernel32") |
| 7 | #pragma comment(lib, "USER32.LIB") |
Reid Kleckner | b0f459e | 2013-05-09 21:10:06 +0000 | [diff] [blame] | 8 | |
| 9 | #define BAR "2" |
| 10 | #pragma comment(linker," /bar=" BAR) |
| 11 | |
Oliver Stannard | c8e3b5f | 2014-06-19 16:10:21 +0000 | [diff] [blame] | 12 | // CHECK: !llvm.module.flags = !{{{.*}}} |
| 13 | // CHECK: !{{[0-9]+}} = metadata !{i32 6, metadata !"Linker Options", metadata ![[link_opts:[0-9]+]]} |
Aaron Ballman | ef50ee9 | 2013-05-24 15:06:56 +0000 | [diff] [blame] | 14 | // CHECK: ![[link_opts]] = metadata !{metadata ![[msvcrt:[0-9]+]], metadata ![[kernel32:[0-9]+]], metadata ![[USER32:[0-9]+]], metadata ![[bar:[0-9]+]]} |
Reid Kleckner | b0f459e | 2013-05-09 21:10:06 +0000 | [diff] [blame] | 15 | // CHECK: ![[msvcrt]] = metadata !{metadata !"/DEFAULTLIB:msvcrt.lib"} |
Aaron Ballman | ef50ee9 | 2013-05-24 15:06:56 +0000 | [diff] [blame] | 16 | // CHECK: ![[kernel32]] = metadata !{metadata !"/DEFAULTLIB:kernel32.lib"} |
| 17 | // CHECK: ![[USER32]] = metadata !{metadata !"/DEFAULTLIB:USER32.LIB"} |
Reid Kleckner | b0f459e | 2013-05-09 21:10:06 +0000 | [diff] [blame] | 18 | // CHECK: ![[bar]] = metadata !{metadata !" /bar=2"} |
| 19 | |
| 20 | // LINUX: metadata !{metadata !"-lmsvcrt.lib"} |
Aaron Ballman | ef50ee9 | 2013-05-24 15:06:56 +0000 | [diff] [blame] | 21 | // LINUX: metadata !{metadata !"-lkernel32"} |
| 22 | // LINUX: metadata !{metadata !"-lUSER32.LIB"} |
Reid Kleckner | b0f459e | 2013-05-09 21:10:06 +0000 | [diff] [blame] | 23 | // LINUX: metadata !{metadata !" /bar=2"} |