diff options
author | Ekaterina Romanova <katya_romanova@playstation.sony.com> | 2015-12-10 18:52:50 +0000 |
---|---|---|
committer | Ekaterina Romanova <katya_romanova@playstation.sony.com> | 2015-12-10 18:52:50 +0000 |
commit | 9218a3bf04ef8f75937b07cae1df7e3c71c8c88f (patch) | |
tree | cb9f62ad766e91994bdd35d022af0688a3f22233 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 923fdbadae3cda40ae3d3e3e977a5bd177866a0f (diff) | |
download | bcm5719-llvm-9218a3bf04ef8f75937b07cae1df7e3c71c8c88f.tar.gz bcm5719-llvm-9218a3bf04ef8f75937b07cae1df7e3c71c8c88f.zip |
Do not generate DW_TAG_imported_module for anonymous namespaces (even nested) for all the platforms except PS4.
For PS4, generate explicit import for anonymous namespaces and mark it by DW_AT_artificial attribute.
Differential Revision: http://reviews.llvm.org/D12624
llvm-svn: 255281
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r-- | clang/lib/Frontend/CompilerInvocation.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp index 4dd1d20c91f..4dc0cf93869 100644 --- a/clang/lib/Frontend/CompilerInvocation.cpp +++ b/clang/lib/Frontend/CompilerInvocation.cpp @@ -365,6 +365,7 @@ static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK, const TargetOptions &TargetOpts) { using namespace options; bool Success = true; + llvm::Triple Triple = llvm::Triple(TargetOpts.Triple); unsigned OptimizationLevel = getOptimizationLevel(Args, IK, Diags); // TODO: This could be done in Driver @@ -409,6 +410,8 @@ static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK, Opts.EmitCodeView = Args.hasArg(OPT_gcodeview); Opts.SplitDwarfFile = Args.getLastArgValue(OPT_split_dwarf_file); Opts.DebugTypeExtRefs = Args.hasArg(OPT_dwarf_ext_refs); + if (Triple.isPS4CPU()) + Opts.DebugExplicitImport = true; for (const auto &Arg : Args.getAllArgValues(OPT_fdebug_prefix_map_EQ)) Opts.DebugPrefixMap.insert(StringRef(Arg).split('=')); |