dblaikie added inline comments.
================ Comment at: clang/lib/Driver/ToolChains/Clang.cpp:3718 + } else + DwarfFission = DwarfFissionKind::None; ---------------- MaskRay wrote: > dblaikie wrote: > > Rather than undoing the DwarfFission uinitialization, instead could the > > DwarfFission initialization be rolled into the "if (gN_Group)" condition? > I could add the OPT_g_Group check to `getDebugFissionKind`, but that would > make the effects of -g0 and "no -g at all" into two places. Having the code > here makes it closer to "how DebugInfoKind == codegenoptions::NoDebugInfo > affects fission" above. Sorry, I'm not following what you're suggesting/discussing. I wasn't meaning to suggest duplicating the OPT_g_Group check. Code something like: ``` if (const Arg *A = Args.getLastArg(options::OPT_g_Group)) { DebugInfoKind = codegenoptions::LimitedDebugInfo; Arg* SplitDWARFArg; DwarfFission = getDebugFissionKind(D, Args, SplitDWARFArg); if (DwarfFission != DwarfFissionKind::None && !checkDebugInfoOption(SplitDWARFArg, Args, D, TC)) { DwarfFission = DwarfFissionKind::None; SplitDWARFInlining = false; } // If the last option explicitly specified a debug-info level, use it. if (checkDebugInfoOption(A, Args, D, TC) && A->getOption().matches(options::OPT_gN_Group)) { DebugInfoKind = DebugLevelToInfoKind(*A); // For -g0 or -gline-tables-only, drop -gsplit-dwarf. This gets a bit more // complicated if you've disabled inline info in the skeleton CUs // (SplitDWARFInlining) - then there's value in composing split-dwarf and // line-tables-only, so let those compose naturally in that case. if (DebugInfoKind == codegenoptions::NoDebugInfo || DebugInfoKind == codegenoptions::DebugDirectivesOnly || (DebugInfoKind == codegenoptions::DebugLineTablesOnly && SplitDWARFInlining)) DwarfFission = DwarfFissionKind::None; } } ``` This way, hopefully, there wouldn't be a period where DwarfFission is incorrectly set and has to be reverted to "None", making it less likely the incorrect value could be used accidentally Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80391/new/ https://reviews.llvm.org/D80391 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits