diff options
| author | Hans Wennborg <hans@hanshq.net> | 2013-08-08 00:17:41 +0000 |
|---|---|---|
| committer | Hans Wennborg <hans@hanshq.net> | 2013-08-08 00:17:41 +0000 |
| commit | 75958c41e220358b66a12c257f3f87abe4b372d5 (patch) | |
| tree | 7fb948b065b519816df001efa9bf4691ffb0ea0c /clang/test/CodeGen/dependent-lib.c | |
| parent | a5689e69afbd1b43c35958be453192a48c507d37 (diff) | |
| download | bcm5719-llvm-75958c41e220358b66a12c257f3f87abe4b372d5.tar.gz bcm5719-llvm-75958c41e220358b66a12c257f3f87abe4b372d5.zip | |
clang-cl: Support the run-time selection options (/MD, /MT et al.)
These flags set some preprocessor macros and injects a dependency
on the runtime library into the object file, which later is picked up
by the linker.
This also adds a new CC1 flag for adding a dependent library.
Differential Revision: http://llvm-reviews.chandlerc.com/D1315
llvm-svn: 187945
Diffstat (limited to 'clang/test/CodeGen/dependent-lib.c')
| -rw-r--r-- | clang/test/CodeGen/dependent-lib.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/clang/test/CodeGen/dependent-lib.c b/clang/test/CodeGen/dependent-lib.c new file mode 100644 index 00000000000..df4aaf07306 --- /dev/null +++ b/clang/test/CodeGen/dependent-lib.c @@ -0,0 +1,15 @@ +// RUN: %clang_cc1 %s --dependent-lib=msvcrt -triple i686-pc-win32 -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 %s --dependent-lib=msvcrt -triple x86_64-pc-win32 -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 %s --dependent-lib=msvcrt -triple i686-pc-linux -emit-llvm -o - | FileCheck -check-prefix LINUX %s + +// CHECK: !llvm.module.flags = !{!0} +// CHECK: !0 = metadata !{i32 6, metadata !"Linker Options", metadata ![[link_opts:[0-9]+]]} +// CHECK: ![[link_opts]] = metadata !{metadata ![[msvcrt:[0-9]+]]} +// CHECK: ![[msvcrt]] = metadata !{metadata !"/DEFAULTLIB:msvcrt.lib"} + +// LINUX: !llvm.module.flags = !{!0} +// LINUX: !0 = metadata !{i32 6, metadata !"Linker Options", metadata ![[link_opts:[0-9]+]]} +// LINUX: ![[link_opts]] = metadata !{metadata ![[msvcrt:[0-9]+]]} +// LINUX: ![[msvcrt]] = metadata !{metadata !"-lmsvcrt"} + +int f(); |

