Skip to content

Commit

Permalink
[Driver] Remove duplicate -e
Browse files Browse the repository at this point in the history
-e has the LinkerInput flag (commit fcf8ada)
and is rendered by AddLinkerInputs. We should remove duplicate rendering (e.g.,
`Args.AddAllArgs(CmdArgs, options::OPT_e)`).
  • Loading branch information
MaskRay committed Jul 8, 2023
1 parent fb149e4 commit 6228122
Show file tree
Hide file tree
Showing 16 changed files with 27 additions and 34 deletions.
4 changes: 2 additions & 2 deletions clang/lib/Driver/ToolChains/Ananas.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -101,8 +101,8 @@ void ananas::Linker::ConstructJob(Compilation &C, const JobAction &JA,
Args.AddAllArgs(CmdArgs, options::OPT_L);
ToolChain.AddFilePathLibArgs(Args, CmdArgs);
Args.AddAllArgs(CmdArgs,
{options::OPT_T_Group, options::OPT_e, options::OPT_s,
options::OPT_t, options::OPT_Z_Flag, options::OPT_r});
{options::OPT_T_Group, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});

if (D.isUsingLTO()) {
assert(!Inputs.empty() && "Must have at least one input.");
Expand Down
6 changes: 3 additions & 3 deletions clang/lib/Driver/ToolChains/BareMetal.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -430,9 +430,9 @@ void baremetal::Linker::ConstructJob(Compilation &C, const JobAction &JA,

CmdArgs.push_back("-Bstatic");

Args.AddAllArgs(CmdArgs, {options::OPT_L, options::OPT_T_Group,
options::OPT_e, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});
Args.AddAllArgs(CmdArgs,
{options::OPT_L, options::OPT_T_Group, options::OPT_s,
options::OPT_t, options::OPT_Z_Flag, options::OPT_r});

TC.AddFilePathLibArgs(Args, CmdArgs);

Expand Down
4 changes: 2 additions & 2 deletions clang/lib/Driver/ToolChains/CSKYToolChain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -170,8 +170,8 @@ void CSKY::Linker::ConstructJob(Compilation &C, const JobAction &JA,
Args.AddAllArgs(CmdArgs, options::OPT_L);
ToolChain.AddFilePathLibArgs(Args, CmdArgs);
Args.AddAllArgs(CmdArgs,
{options::OPT_T_Group, options::OPT_e, options::OPT_s,
options::OPT_t, options::OPT_Z_Flag, options::OPT_r});
{options::OPT_T_Group, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});

AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs, JA);

Expand Down
4 changes: 2 additions & 2 deletions clang/lib/Driver/ToolChains/CloudABI.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ void cloudabi::Linker::ConstructJob(Compilation &C, const JobAction &JA,
Args.AddAllArgs(CmdArgs, options::OPT_L);
ToolChain.AddFilePathLibArgs(Args, CmdArgs);
Args.AddAllArgs(CmdArgs,
{options::OPT_T_Group, options::OPT_e, options::OPT_s,
options::OPT_t, options::OPT_Z_Flag, options::OPT_r});
{options::OPT_T_Group, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});

if (D.isUsingLTO()) {
assert(!Inputs.empty() && "Must have at least one input.");
Expand Down
6 changes: 3 additions & 3 deletions clang/lib/Driver/ToolChains/Darwin.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -626,9 +626,9 @@ void darwin::Linker::ConstructJob(Compilation &C, const JobAction &JA,

// It seems that the 'e' option is completely ignored for dynamic executables
// (the default), and with static executables, the last one wins, as expected.
Args.AddAllArgs(CmdArgs, {options::OPT_d_Flag, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_u_Group,
options::OPT_e, options::OPT_r});
Args.AddAllArgs(CmdArgs,
{options::OPT_d_Flag, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_u_Group, options::OPT_r});

// Forward -ObjC when either -ObjC or -ObjC++ is used, to force loading
// members of static archive libraries which implement Objective-C classes or
Expand Down
1 change: 0 additions & 1 deletion clang/lib/Driver/ToolChains/FreeBSD.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -269,7 +269,6 @@ void freebsd::Linker::ConstructJob(Compilation &C, const JobAction &JA,
Args.AddAllArgs(CmdArgs, options::OPT_L);
ToolChain.AddFilePathLibArgs(Args, CmdArgs);
Args.AddAllArgs(CmdArgs, options::OPT_T_Group);
Args.AddAllArgs(CmdArgs, options::OPT_e);
Args.AddAllArgs(CmdArgs, options::OPT_s);
Args.AddAllArgs(CmdArgs, options::OPT_t);
Args.AddAllArgs(CmdArgs, options::OPT_Z_Flag);
Expand Down
10 changes: 4 additions & 6 deletions clang/lib/Driver/ToolChains/Hexagon.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -363,9 +363,8 @@ constructHexagonLinkArgs(Compilation &C, const JobAction &JA,

CmdArgs.push_back(
Args.MakeArgString(StringRef("-L") + D.SysRoot + "/usr/lib"));
Args.AddAllArgs(CmdArgs,
{options::OPT_T_Group, options::OPT_e, options::OPT_s,
options::OPT_t, options::OPT_u_Group});
Args.AddAllArgs(CmdArgs, {options::OPT_T_Group, options::OPT_s,
options::OPT_t, options::OPT_u_Group});
AddLinkerInputs(HTC, Inputs, Args, CmdArgs, JA);

if (!Args.hasArg(options::OPT_nostdlib, options::OPT_nodefaultlibs)) {
Expand Down Expand Up @@ -446,9 +445,8 @@ constructHexagonLinkArgs(Compilation &C, const JobAction &JA,
//----------------------------------------------------------------------------
//
//----------------------------------------------------------------------------
Args.AddAllArgs(CmdArgs,
{options::OPT_T_Group, options::OPT_e, options::OPT_s,
options::OPT_t, options::OPT_u_Group});
Args.AddAllArgs(CmdArgs, {options::OPT_T_Group, options::OPT_s,
options::OPT_t, options::OPT_u_Group});

AddLinkerInputs(HTC, Inputs, Args, CmdArgs, JA);

Expand Down
1 change: 0 additions & 1 deletion clang/lib/Driver/ToolChains/MSP430.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -280,7 +280,6 @@ void msp430::Linker::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back("--gc-sections");

Args.AddAllArgs(CmdArgs, {
options::OPT_e,
options::OPT_n,
options::OPT_s,
options::OPT_t,
Expand Down
1 change: 0 additions & 1 deletion clang/lib/Driver/ToolChains/MinGW.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,6 @@ void tools::MinGW::Linker::ConstructJob(Compilation &C, const JobAction &JA,
} else
CmdArgs.push_back(OutputFile);

Args.AddAllArgs(CmdArgs, options::OPT_e);
// FIXME: add -N, -n flags
Args.AddLastArg(CmdArgs, options::OPT_r);
Args.AddLastArg(CmdArgs, options::OPT_s);
Expand Down
6 changes: 3 additions & 3 deletions clang/lib/Driver/ToolChains/Myriad.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -161,9 +161,9 @@ void tools::Myriad::Linker::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back(Args.MakeArgString(TC.GetFilePath("crtbegin.o")));
}

Args.AddAllArgs(CmdArgs, {options::OPT_L, options::OPT_T_Group,
options::OPT_e, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});
Args.AddAllArgs(CmdArgs,
{options::OPT_L, options::OPT_T_Group, options::OPT_s,
options::OPT_t, options::OPT_Z_Flag, options::OPT_r});

TC.AddFilePathLibArgs(Args, CmdArgs);

Expand Down
1 change: 0 additions & 1 deletion clang/lib/Driver/ToolChains/NetBSD.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,6 @@ void netbsd::Linker::ConstructJob(Compilation &C, const JobAction &JA,

Args.AddAllArgs(CmdArgs, options::OPT_L);
Args.AddAllArgs(CmdArgs, options::OPT_T_Group);
Args.AddAllArgs(CmdArgs, options::OPT_e);
Args.AddAllArgs(CmdArgs, options::OPT_s);
Args.AddAllArgs(CmdArgs, options::OPT_t);
Args.AddAllArgs(CmdArgs, options::OPT_Z_Flag);
Expand Down
6 changes: 3 additions & 3 deletions clang/lib/Driver/ToolChains/OpenBSD.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -196,9 +196,9 @@ void openbsd::Linker::ConstructJob(Compilation &C, const JobAction &JA,

Args.AddAllArgs(CmdArgs, options::OPT_L);
ToolChain.AddFilePathLibArgs(Args, CmdArgs);
Args.AddAllArgs(CmdArgs, {options::OPT_T_Group, options::OPT_e,
options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});
Args.AddAllArgs(CmdArgs,
{options::OPT_T_Group, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});

bool NeedsSanitizerDeps = addSanitizerRuntimes(ToolChain, Args, CmdArgs);
bool NeedsXRayDeps = addXRayRuntime(ToolChain, Args, CmdArgs);
Expand Down
1 change: 0 additions & 1 deletion clang/lib/Driver/ToolChains/PS4CPU.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,6 @@ void tools::PScpu::Linker::ConstructJob(Compilation &C, const JobAction &JA,

Args.AddAllArgs(CmdArgs, options::OPT_L);
Args.AddAllArgs(CmdArgs, options::OPT_T_Group);
Args.AddAllArgs(CmdArgs, options::OPT_e);
Args.AddAllArgs(CmdArgs, options::OPT_s);
Args.AddAllArgs(CmdArgs, options::OPT_t);
Args.AddAllArgs(CmdArgs, options::OPT_r);
Expand Down
4 changes: 2 additions & 2 deletions clang/lib/Driver/ToolChains/RISCVToolchain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -194,8 +194,8 @@ void RISCV::Linker::ConstructJob(Compilation &C, const JobAction &JA,
Args.AddAllArgs(CmdArgs, options::OPT_u);
ToolChain.AddFilePathLibArgs(Args, CmdArgs);
Args.AddAllArgs(CmdArgs,
{options::OPT_T_Group, options::OPT_e, options::OPT_s,
options::OPT_t, options::OPT_Z_Flag, options::OPT_r});
{options::OPT_T_Group, options::OPT_s, options::OPT_t,
options::OPT_Z_Flag, options::OPT_r});

// TODO: add C++ includes and libs if compiling C++.

Expand Down
4 changes: 2 additions & 2 deletions clang/lib/Driver/ToolChains/Solaris.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -121,8 +121,8 @@ void solaris::Linker::ConstructJob(Compilation &C, const JobAction &JA,

getToolChain().AddFilePathLibArgs(Args, CmdArgs);

Args.AddAllArgs(CmdArgs, {options::OPT_L, options::OPT_T_Group,
options::OPT_e, options::OPT_r});
Args.AddAllArgs(CmdArgs,
{options::OPT_L, options::OPT_T_Group, options::OPT_r});

bool NeedsSanitizerDeps = addSanitizerRuntimes(getToolChain(), Args, CmdArgs);
AddLinkerInputs(getToolChain(), Inputs, Args, CmdArgs, JA);
Expand Down
2 changes: 1 addition & 1 deletion clang/test/Driver/msp430-toolchain.c
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
// RUN: FileCheck -check-prefix=MISC-FLAGS-2-POS %s < %t
// RUN: FileCheck -check-prefix=MISC-FLAGS-2-NEG %s < %t
// MISC-FLAGS-2-POS: "{{.*}}msp430-elf-ld"
// MISC-FLAGS-2-POS: "-e" "EntryPoint" "-s" "-u" "__undef"
// MISC-FLAGS-2-POS: "-s" "-u" "__undef"{{.*}} "-e" "EntryPoint"
// MISC-FLAGS-2-NEG: "{{.*}}msp430-elf-ld"
// MISC-FLAGS-2-NEG-NOT: "-r"
// MISC-FLAGS-2-NEG-NOT: "-t"
Expand Down

0 comments on commit 6228122

Please sign in to comment.