Add an interesting case we already get right.
authorRafael Espindola <rafael.espindola@gmail.com>
Wed, 2 Dec 2015 15:02:43 +0000 (15:02 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Wed, 2 Dec 2015 15:02:43 +0000 (15:02 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254514 91177308-0d34-0410-b5e6-96231b3b80d8

test/Linker/ctors4.ll [new file with mode: 0644]

diff --git a/test/Linker/ctors4.ll b/test/Linker/ctors4.ll
new file mode 100644 (file)
index 0000000..c450084
--- /dev/null
@@ -0,0 +1,14 @@
+; RUN: llvm-link -S %s -o - | FileCheck %s
+
+define void @f() {
+  ret void
+}
+
+; We lazy link @v, which causes llvm.global_ctors to have the corresponding
+; entry.
+@v = linkonce global i8 42
+
+@llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* @f, i8* @v }]
+
+; CHECK: @llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* @f, i8* @v }]
+