diff options
Diffstat (limited to 'lld/ELF/Config.h')
-rw-r--r-- | lld/ELF/Config.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lld/ELF/Config.h b/lld/ELF/Config.h index 25ec18b64d2..6eec7e1430f 100644 --- a/lld/ELF/Config.h +++ b/lld/ELF/Config.h @@ -33,6 +33,9 @@ enum ELFKind { // For --build-id. enum class BuildIdKind { None, Fnv1, Md5, Sha1, Hexstring, Uuid }; +// For --discard-{all,locals,none}. +enum class DiscardPolicy { Default, All, Locals, None }; + // For --strip-{all,debug}. enum class StripPolicy { None, All, Debug }; @@ -84,9 +87,6 @@ struct Configuration { bool BsymbolicFunctions; bool Demangle = true; bool DisableVerify; - bool DiscardAll; - bool DiscardLocals; - bool DiscardNone; bool EhFrameHdr; bool EnableNewDtags; bool ExportDynamic; @@ -118,6 +118,7 @@ struct Configuration { bool ZNow; bool ZOrigin; bool ZRelro; + DiscardPolicy Discard; StripPolicy Strip = StripPolicy::None; UnresolvedPolicy UnresolvedSymbols; BuildIdKind BuildId = BuildIdKind::None; |