diff options
Diffstat (limited to 'test/Linker/comdat_group.ll')
-rw-r--r-- | test/Linker/comdat_group.ll | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/Linker/comdat_group.ll b/test/Linker/comdat_group.ll new file mode 100644 index 000000000000..486a6ffb9b1d --- /dev/null +++ b/test/Linker/comdat_group.ll @@ -0,0 +1,18 @@ +; Ensure complete comdat group is materialized +; RUN: llvm-link %s -S | FileCheck %s +; CHECK: $linkoncecomdat = comdat any +; CHECK: @linkoncecomdat = linkonce global i32 2 +; CHECK: @linkoncecomdat_unref_var = linkonce global i32 2, comdat($linkoncecomdat) +; CHECK: define linkonce void @linkoncecomdat_unref_func() comdat($linkoncecomdat) + +$linkoncecomdat = comdat any +@linkoncecomdat = linkonce global i32 2, comdat($linkoncecomdat) +@linkoncecomdat_unref_var = linkonce global i32 2, comdat($linkoncecomdat) +define linkonce void @linkoncecomdat_unref_func() comdat($linkoncecomdat) { + ret void +} +; Reference one member of comdat so that comdat is generated. +define void @ref_linkoncecomdat() { + load i32, i32* @linkoncecomdat, align 4 + ret void +} |