summaryrefslogtreecommitdiff
path: root/test/MC/COFF
diff options
context:
space:
mode:
authorReid Kleckner <reid@kleckner.net>2013-04-25 19:34:41 +0000
committerReid Kleckner <reid@kleckner.net>2013-04-25 19:34:41 +0000
commit4b5581530393e647d559360f8c6f229c05aca94f (patch)
tree14ce0ae13274dae4d97ad2738dfa9850e431cfc3 /test/MC/COFF
parent93d0b06e2adca2d9f3d4ec544f352cc4e5e9618a (diff)
downloadllvm-4b5581530393e647d559360f8c6f229c05aca94f.tar.gz
llvm-4b5581530393e647d559360f8c6f229c05aca94f.tar.bz2
llvm-4b5581530393e647d559360f8c6f229c05aca94f.tar.xz
[mc-coff] Forward Linker Option flags into the .drectve section
Summary: This is modelled on the Mach-O linker options implementation and should support a Clang implementation of #pragma comment(lib/linker). Reviewers: rafael CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D724 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180569 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/COFF')
-rwxr-xr-xtest/MC/COFF/linker-options.ll21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/MC/COFF/linker-options.ll b/test/MC/COFF/linker-options.ll
new file mode 100755
index 0000000000..de11941744
--- /dev/null
+++ b/test/MC/COFF/linker-options.ll
@@ -0,0 +1,21 @@
+; RUN: llc -O0 -mtriple=i386-pc-win32 -filetype=asm -o - %s | FileCheck %s
+
+!0 = metadata !{ i32 6, metadata !"Linker Options",
+ metadata !{
+ metadata !{ metadata !"/DEFAULTLIB:msvcrt.lib" },
+ metadata !{ metadata !"/DEFAULTLIB:msvcrt.lib",
+ metadata !"/DEFAULTLIB:secur32.lib" },
+ metadata !{ metadata !"/with spaces" } } }
+
+!llvm.module.flags = !{ !0 }
+
+define dllexport void @foo() {
+ ret void
+}
+
+; CHECK: .section .drectve,"r"
+; CHECK: .ascii " /DEFAULTLIB:msvcrt.lib"
+; CHECK: .ascii " /DEFAULTLIB:msvcrt.lib"
+; CHECK: .ascii " /DEFAULTLIB:secur32.lib"
+; CHECK: .ascii " \"/with spaces\""
+; CHECK: .ascii " /EXPORT:_foo"