Skip to content

Commit

Permalink
[DebugInfo] -gpubnames option support in Driver
Browse files Browse the repository at this point in the history
This option controls the production of .debug_names section (in DWARFv5)
and .debug_pubnames section (in DWARFv4).

Flang side support is provided in
flang-compiler/flang#934
  • Loading branch information
SouraVX committed Mar 15, 2021
1 parent b93cbc1 commit cfbe7fc
Showing 1 changed file with 10 additions and 7 deletions.
17 changes: 10 additions & 7 deletions clang/lib/Driver/ToolChains/ClassicFlang.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -329,16 +329,16 @@ void ClassicFlang::ConstructJob(Compilation &C, const JobAction &JA,

// Last argument of -g/-gdwarfX should be taken.
Arg *GArg = Args.getLastArg(options::OPT_g_Flag);
Arg *GDwarfArg = Args.getLastArg(options::OPT_gdwarf_2,
options::OPT_gdwarf_3,
options::OPT_gdwarf_4,
options::OPT_gdwarf_5);
Arg *GDwarfArg = Args.getLastArg(options::OPT_gdwarf_2, options::OPT_gdwarf_3,
options::OPT_gdwarf_4, options::OPT_gdwarf_5,
options::OPT_gpubnames);

if (GArg || GDwarfArg) {

for (auto Arg : Args.filtered(options::OPT_g_Flag, options::OPT_gdwarf_2,
options::OPT_gdwarf_3, options::OPT_gdwarf_4,
options::OPT_gdwarf_5)) {
for (auto Arg :
Args.filtered(options::OPT_g_Flag, options::OPT_gdwarf_2,
options::OPT_gdwarf_3, options::OPT_gdwarf_4,
options::OPT_gdwarf_5, options::OPT_gpubnames)) {
Arg->claim();
}

Expand All @@ -355,6 +355,9 @@ void ClassicFlang::ConstructJob(Compilation &C, const JobAction &JA,
CommonCmdArgs.push_back("0x1000000");
else if (GDwarfArg->getOption().matches(options::OPT_gdwarf_5)) // -gdwarf-5
CommonCmdArgs.push_back("0x2000000");
else if (GDwarfArg->getOption().matches(
options::OPT_gpubnames)) // -gpubnames
CommonCmdArgs.push_back("0x40000000");
}

// -Mipa has no effect
Expand Down

0 comments on commit cfbe7fc

Please sign in to comment.