This is an archive of the discontinued LLVM Phabricator instance.

[LLD] [MinGW] Add more options for disabling flags in the executable
ClosedPublic

Authored by mstorsjo on Aug 11 2021, 1:48 PM.

Details

Summary

In e72403f96de7f1c681acd5968f72aa986412dfce, we added the flag
"--no-dynamicbase" for disabling the dynamicbase flag which we set
by default. At the time, ld.bfd didn't have any corresponding
option (as ld.bfd defaulted to not setting the flag). Almost at
the same time, corresponding options were added to ld.bfd for
disabling it (while it was being enabled by default), with a
different name, "--disable-dynamicbase".

Thus add the "--disable-dynamicbase" option. Make this default
one advertised in the help listing, but keep the "--no-dynamicbase"
form as an alias. Also improve checking for the last option set
if there are multiple ones on the same command line.

Also add corresponding disable options for a lot of other flags
that we set by default, also added in ld.bfd in the same commit:
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=514b4e191d5f46de8e142fe216e677a35fa9c4bb

Diff Detail

Event Timeline

mstorsjo created this revision.Aug 11 2021, 1:48 PM
mstorsjo requested review of this revision.Aug 11 2021, 1:48 PM
Herald added a project: Restricted Project. · View Herald TranscriptAug 11 2021, 1:48 PM
rnk accepted this revision.Aug 11 2021, 2:49 PM

lgtm

This revision is now accepted and ready to land.Aug 11 2021, 2:49 PM