diff options
author | Adrian Prantl <aprantl@apple.com> | 2015-09-22 23:26:43 +0000 |
---|---|---|
committer | Adrian Prantl <aprantl@apple.com> | 2015-09-22 23:26:43 +0000 |
commit | a5206ce72a7eb77ff9f99462bb69dd7e79243cd0 (patch) | |
tree | a489fbc47651da75cf1eb615dbbc3d066d549312 /clang/test/Modules/ModuleDebugInfo.cpp | |
parent | adbd2b1f32ddc3fc9ee1726fe4f5c6fd3b51014d (diff) | |
download | llvm-a5206ce72a7eb77ff9f99462bb69dd7e79243cd0.zip llvm-a5206ce72a7eb77ff9f99462bb69dd7e79243cd0.tar.gz llvm-a5206ce72a7eb77ff9f99462bb69dd7e79243cd0.tar.bz2 |
Module Debugging: Use the clang module signature as the module's dwo_id
when building a module. Clang already records the module signature when
building a skeleton CU to reference a clang module.
Matching the id in the skeleton with the one in the module allows a DWARF
consumer to verify that they found the correct version of the module
without them needing to know about the clang module format.
llvm-svn: 248345
Diffstat (limited to 'clang/test/Modules/ModuleDebugInfo.cpp')
-rw-r--r-- | clang/test/Modules/ModuleDebugInfo.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/test/Modules/ModuleDebugInfo.cpp b/clang/test/Modules/ModuleDebugInfo.cpp index a23c245..823d5dd 100644 --- a/clang/test/Modules/ModuleDebugInfo.cpp +++ b/clang/test/Modules/ModuleDebugInfo.cpp @@ -8,6 +8,7 @@ // RUN: %clang_cc1 -triple %itanium_abi_triple -x objective-c++ -std=c++11 -g -fmodules -fmodule-format=obj -fimplicit-module-maps -DMODULES -fmodules-cache-path=%t %s -I %S/Inputs -I %t -emit-llvm -o %t.ll -mllvm -debug-only=pchcontainer &>%t-mod.ll // RUN: cat %t-mod.ll | FileCheck %s // RUN: cat %t-mod.ll | FileCheck --check-prefix=CHECK-NEG %s +// RUN: cat %t-mod.ll | FileCheck --check-prefix=CHECK-DWO %s // PCH: // RUN: %clang_cc1 -triple %itanium_abi_triple -x c++ -std=c++11 -emit-pch -fmodule-format=obj -I %S/Inputs -o %t.pch %S/Inputs/DebugCXX.h -mllvm -debug-only=pchcontainer &>%t-pch.ll @@ -20,7 +21,8 @@ // CHECK: distinct !DICompileUnit(language: DW_LANG_{{.*}}C_plus_plus, // CHECK-SAME: isOptimized: false, -// CHECK-SAME: splitDebugFilename: +// CHECK-SAME-NOT: splitDebugFilename: +// CHECK-DWO: dwoId: // CHECK: !DICompositeType(tag: DW_TAG_enumeration_type, name: "Enum" // CHECK-SAME: identifier: "_ZTSN8DebugCXX4EnumE") // CHECK: !DINamespace(name: "DebugCXX" |