summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp2
-rw-r--r--llvm/test/DebugInfo/X86/gnu-public-names.ll3
2 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
index 171c13803c1..7d35937ccaf 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
@@ -880,7 +880,7 @@ void CompileUnit::addGlobalName(StringRef Name, DIE *Die) {
///
void CompileUnit::addGlobalType(DIType Ty) {
DIDescriptor Context = DD->resolve(Ty.getContext());
- if (Ty.isCompositeType() && !Ty.getName().empty() && !Ty.isForwardDecl() &&
+ if (!Ty.getName().empty() && !Ty.isForwardDecl() &&
(!Context || Context.isCompileUnit() || Context.isFile() ||
Context.isNameSpace()))
if (DIEEntry *Entry = getDIEEntry(Ty))
diff --git a/llvm/test/DebugInfo/X86/gnu-public-names.ll b/llvm/test/DebugInfo/X86/gnu-public-names.ll
index 54320be7e78..bca78c39f08 100644
--- a/llvm/test/DebugInfo/X86/gnu-public-names.ll
+++ b/llvm/test/DebugInfo/X86/gnu-public-names.ll
@@ -38,6 +38,9 @@
; ASM: .section .debug_gnu_pubtypes
; ASM: .byte 16 # Kind: TYPE, EXTERNAL
+; ASM: .asciz "C" # External Name
+; ASM: .byte 144 # Kind: TYPE, STATIC
+; ASM: .asciz "int" # External Name
; CHECK: .debug_info contents:
; CHECK: 0x00000046: DW_TAG_subprogram
OpenPOWER on IntegriCloud