diff options
Diffstat (limited to 'clang/lib/CodeGen/CGDebugInfo.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGDebugInfo.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/clang/lib/CodeGen/CGDebugInfo.cpp b/clang/lib/CodeGen/CGDebugInfo.cpp index edef27b..2fd2227 100644 --- a/clang/lib/CodeGen/CGDebugInfo.cpp +++ b/clang/lib/CodeGen/CGDebugInfo.cpp @@ -637,17 +637,21 @@ void CGDebugInfo::CreateCompileUnit() { SDK = *It; } + llvm::DICompileUnit::DebugNameTableKind NameTableKind = + static_cast<llvm::DICompileUnit::DebugNameTableKind>( + CGOpts.DebugNameTable); + if (CGM.getTarget().getTriple().isNVPTX()) + NameTableKind = llvm::DICompileUnit::DebugNameTableKind::None; + else if (CGM.getTarget().getTriple().getVendor() == llvm::Triple::Apple) + NameTableKind = llvm::DICompileUnit::DebugNameTableKind::Apple; + // Create new compile unit. TheCU = DBuilder.createCompileUnit( LangTag, CUFile, CGOpts.EmitVersionIdentMetadata ? Producer : "", LO.Optimize || CGOpts.PrepareForLTO || CGOpts.PrepareForThinLTO, CGOpts.DwarfDebugFlags, RuntimeVers, CGOpts.SplitDwarfFile, EmissionKind, DwoId, CGOpts.SplitDwarfInlining, CGOpts.DebugInfoForProfiling, - CGM.getTarget().getTriple().isNVPTX() - ? llvm::DICompileUnit::DebugNameTableKind::None - : static_cast<llvm::DICompileUnit::DebugNameTableKind>( - CGOpts.DebugNameTable), - CGOpts.DebugRangesBaseAddress, remapDIPath(Sysroot), SDK); + NameTableKind, CGOpts.DebugRangesBaseAddress, remapDIPath(Sysroot), SDK); } llvm::DIType *CGDebugInfo::CreateType(const BuiltinType *BT) { |
