From eb1ddfc8f446438fddff60a2de3784f7c76b5ef3 Mon Sep 17 00:00:00 2001 From: Adrian Prantl Date: Mon, 19 May 2014 23:41:25 +0000 Subject: [PATCH] LTO: Add a testcase for linking modules with incompatible Debug Info Versions. rdar://problem/16926122 llvm-svn: 209183 --- llvm/test/Linker/debug-info-version-a.ll | 16 ++++++++++++++++ llvm/test/Linker/debug-info-version-b.ll | 10 ++++++++++ 2 files changed, 26 insertions(+) create mode 100644 llvm/test/Linker/debug-info-version-a.ll create mode 100644 llvm/test/Linker/debug-info-version-b.ll diff --git a/llvm/test/Linker/debug-info-version-a.ll b/llvm/test/Linker/debug-info-version-a.ll new file mode 100644 index 000000000000..c3d9c87a2e90 --- /dev/null +++ b/llvm/test/Linker/debug-info-version-a.ll @@ -0,0 +1,16 @@ +; RUN: llvm-link %s %p/debug-info-version-b.ll -S -o - | FileCheck %s + +; Test linking of incompatible debug info versions. The debug info +; from the other file should be dropped. + +; CHECK-NOT: metadata !{metadata !"b.c", metadata !""} +; CHECK: metadata !{metadata !"a.c", metadata !""} +; CHECK-NOT: metadata !{metadata !"b.c", metadata !""} + +!llvm.module.flags = !{ !0 } +!llvm.dbg.cu = !{!1} + +!0 = metadata !{i32 2, metadata !"Debug Info Version", i32 1} +!1 = metadata !{i32 589841, metadata !2, i32 12, metadata !"clang", i1 true, metadata !"", i32 0, metadata !3, metadata !3, metadata !3, null, null, metadata !""} ; [ DW_TAG_compile_unit ] +!2 = metadata !{metadata !"a.c", metadata !""} +!3 = metadata !{} diff --git a/llvm/test/Linker/debug-info-version-b.ll b/llvm/test/Linker/debug-info-version-b.ll new file mode 100644 index 000000000000..2b4f1844d169 --- /dev/null +++ b/llvm/test/Linker/debug-info-version-b.ll @@ -0,0 +1,10 @@ +; RUN: true +; Companion for debug-info-version-a.ll. + +!llvm.module.flags = !{ !0 } +!llvm.dbg.cu = !{!1} + +!0 = metadata !{i32 2, metadata !"Debug Info Version", i32 42} +!1 = metadata !{i32 589841, metadata !2, i32 12, metadata !"clang", metadata !"I AM UNEXPECTED!"} ; [ DW_TAG_compile_unit ] +!2 = metadata !{metadata !"b.c", metadata !""} +!3 = metadata !{}