Since this flag is new in 3.9, should we merge this there? On Tue, Aug 9, 2016 at 1:23 PM, Reid Kleckner via cfe-commits < cfe-commits@lists.llvm.org> wrote:
> Author: rnk > Date: Tue Aug 9 12:23:56 2016 > New Revision: 278139 > > URL: http://llvm.org/viewvc/llvm-project?rev=278139&view=rev > Log: > [clang-cl] Make -gline-tables-only imply -gcodeview > > It's surprising that you have to pass /Z7 in addition to -gcodeview to > get debug info. The sanitizer runtime, for example, expects that if the > compiler supports the -gline-tables-only flag, then it will emit debug > info. > > Modified: > cfe/trunk/lib/Driver/Tools.cpp > cfe/trunk/test/Driver/cl-options.c > > Modified: cfe/trunk/lib/Driver/Tools.cpp > URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ > Tools.cpp?rev=278139&r1=278138&r2=278139&view=diff > ============================================================ > ================== > --- cfe/trunk/lib/Driver/Tools.cpp (original) > +++ cfe/trunk/lib/Driver/Tools.cpp Tue Aug 9 12:23:56 2016 > @@ -4611,8 +4611,8 @@ void Clang::ConstructJob(Compilation &C, > options::OPT_gdwarf_4, > options::OPT_gdwarf_5)) > DwarfVersion = DwarfVersionNum(A->getSpelling()); > > - // Forward -gcodeview. > - // 'EmitCodeView might have been set by CL-compatibility argument > parsing. > + // Forward -gcodeview. EmitCodeView might have been set by > CL-compatibility > + // argument parsing. > if (Args.hasArg(options::OPT_gcodeview) || EmitCodeView) { > // DwarfVersion remains at 0 if no explicit choice was made. > CmdArgs.push_back("-gcodeview"); > @@ -6402,9 +6402,10 @@ void Clang::AddClangCLArgs(const ArgList > CmdArgs.push_back(Args.MakeArgString(Twine(LangOptions::SSPStrong))); > } > > - // Emit CodeView if -Z7 or -Zd are present. > + // Emit CodeView if -Z7, -Zd, or -gline-tables-only are present. > if (Arg *DebugInfoArg = > - Args.getLastArg(options::OPT__SLASH_Z7, > options::OPT__SLASH_Zd)) { > + Args.getLastArg(options::OPT__SLASH_Z7, options::OPT__SLASH_Zd, > + options::OPT_gline_tables_only)) { > *EmitCodeView = true; > if (DebugInfoArg->getOption().matches(options::OPT__SLASH_Z7)) > *DebugInfoKind = codegenoptions::LimitedDebugInfo; > > Modified: cfe/trunk/test/Driver/cl-options.c > URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/ > cl-options.c?rev=278139&r1=278138&r2=278139&view=diff > ============================================================ > ================== > --- cfe/trunk/test/Driver/cl-options.c (original) > +++ cfe/trunk/test/Driver/cl-options.c Tue Aug 9 12:23:56 2016 > @@ -424,6 +424,10 @@ > // Z7GMLT: "-gcodeview" > // Z7GMLT: "-debug-info-kind=line-tables-only" > > +// RUN: %clang_cl -gline-tables-only /c -### -- %s 2>&1 | FileCheck > -check-prefix=ZGMLT %s > +// ZGMLT: "-gcodeview" > +// ZGMLT: "-debug-info-kind=line-tables-only" > + > // RUN: %clang_cl /c -### -- %s 2>&1 | FileCheck > -check-prefix=BreproDefault %s > // BreproDefault: "-mincremental-linker-compatible" > > > > _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits