diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:21 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:21 +0000 |
commit | eb1ff93d02b5f17b6b409e83c6d9be585f4a04b3 (patch) | |
tree | 7490b4a8943293f251ad733465936e6ec302b3e9 /COFF/Options.td | |
parent | bafea25f368c63f0b39789906adfed6e39219e64 (diff) | |
download | src-eb1ff93d02b5f17b6b409e83c6d9be585f4a04b3.tar.gz src-eb1ff93d02b5f17b6b409e83c6d9be585f4a04b3.zip |
Vendor import of lld trunk r321017:vendor/lld/lld-trunk-r321017
Notes
Notes:
svn path=/vendor/lld/dist/; revision=326947
svn path=/vendor/lld/lld-trunk-r321017/; revision=326948; tag=vendor/lld/lld-trunk-r321017
Diffstat (limited to 'COFF/Options.td')
-rw-r--r-- | COFF/Options.td | 64 |
1 files changed, 45 insertions, 19 deletions
diff --git a/COFF/Options.td b/COFF/Options.td index 61523c4f2256..0e7a79730fa2 100644 --- a/COFF/Options.td +++ b/COFF/Options.td @@ -9,13 +9,15 @@ class F<string name> : Flag<["/", "-", "-?"], name>; class P<string name, string help> : Joined<["/", "-", "-?"], name#":">, HelpText<help>; -// Boolean flag suffixed by ":no". -multiclass B<string name, string help> { - def "" : F<name>; - def _no : F<name#":no">, HelpText<help>; +// Boolean flag which can be suffixed by ":no". Using it unsuffixed turns the +// flag on and using it suffixed by ":no" turns it off. +multiclass B<string name, string help_on, string help_off> { + def "" : F<name>, HelpText<help_on>; + def _no : F<name#":no">, HelpText<help_off>; } def align : P<"align", "Section alignment">; +def aligncomm : P<"aligncomm", "Set common symbol alignment">; def alternatename : P<"alternatename", "Define weak alias">; def base : P<"base", "Base address of the program">; def defaultlib : P<"defaultlib", "Add the library to the list of input files">; @@ -30,6 +32,8 @@ def heap : P<"heap", "Size of the heap">; def implib : P<"implib", "Import library name">; def libpath : P<"libpath", "Additional library search path">; def linkrepro : P<"linkrepro", "Dump linker invocation and input files for debugging">; +def lldltocache : P<"lldltocache", "Path to ThinLTO cached object file directory">; +def lldltocachepolicy : P<"lldltocachepolicy", "Pruning policy for the ThinLTO cache">; def lldsavetemps : F<"lldsavetemps">, HelpText<"Save temporary files instead of deleting them">; def machine : P<"machine", "Specify target platform">; @@ -44,6 +48,7 @@ def stack : P<"stack", "Size of the stack">; def stub : P<"stub", "Specify DOS stub file">; def subsystem : P<"subsystem", "Specify subsystem">; def version : P<"version", "Specify a version number in the PE header">; +def wholearchive_file : P<"wholearchive", "Include all object files from this archive">; def disallowlib : Joined<["/", "-", "-?"], "disallowlib:">, Alias<nodefaultlib>; @@ -75,31 +80,53 @@ def profile : F<"profile">; def swaprun_cd : F<"swaprun:cd">; def swaprun_net : F<"swaprun:net">; def verbose : F<"verbose">; +def wholearchive_flag : F<"wholearchive">; def force : F<"force">, HelpText<"Allow undefined symbols when creating executables">; def force_unresolved : F<"force:unresolved">; +defm WX : B<"WX", "Treat warnings as errors", "Don't treat warnings as errors">; -defm allowbind: B<"allowbind", "Disable DLL binding">; -defm allowisolation : B<"allowisolation", "Set NO_ISOLATION bit">; +defm allowbind : B<"allowbind", "Enable DLL binding (default)", + "Disable DLL binding">; +defm allowisolation : B<"allowisolation", "Enable DLL isolation (default)", + "Disable DLL isolation">; defm appcontainer : B<"appcontainer", - "Image can only be run in an app container">; -defm dynamicbase : B<"dynamicbase", - "Disable address space layout randomization">; -defm fixed : B<"fixed", "Enable base relocations">; -defm highentropyva : B<"highentropyva", "Set HIGH_ENTROPY_VA bit">; -defm largeaddressaware : B<"largeaddressaware", "Disable large addresses">; -defm nxcompat : B<"nxcompat", "Disable data execution provention">; -defm safeseh : B<"safeseh", "Produce an image with Safe Exception Handler">; -defm tsaware : B<"tsaware", "Create non-Terminal Server aware executable">; + "Image can only be run in an app container", + "Image can run outside an app container (default)">; +defm dynamicbase : B<"dynamicbase", "Enable ASLR (default unless /fixed)", + "Disable ASLR (default when /fixed)">; +defm fixed : B<"fixed", "Disable base relocations", + "Enable base relocations (default)">; +defm highentropyva : B<"highentropyva", + "Enable 64-bit ASLR (default on 64-bit)", + "Disable 64-bit ASLR">; +defm largeaddressaware : B<"largeaddressaware", + "Enable large addresses (default on 64-bit)", + "Disable large addresses (default on 32-bit)">; +defm nxcompat : B<"nxcompat", "Enable data execution prevention (default)", + "Disable data execution provention">; +defm safeseh : B<"safeseh", + "Produce an image with Safe Exception Handler (only for x86)", + "Don't produce an image with Safe Exception Handler">; +defm tsaware : B<"tsaware", + "Create Terminal Server aware executable (default)", + "Create non-Terminal Server aware executable">; def help : F<"help">; def help_q : Flag<["/?", "-?"], "">, Alias<help>; // LLD extensions -def nopdb : F<"nopdb">, HelpText<"Disable PDB generation for DWARF users">; -def nosymtab : F<"nosymtab">; +def debug_ghash : F<"debug:ghash">; +def debug_dwarf : F<"debug:dwarf">; +def export_all_symbols : F<"export-all-symbols">; +def lldmingw : F<"lldmingw">; def msvclto : F<"msvclto">; +def output_def : Joined<["/", "-"], "output-def:">; +def rsp_quoting : Joined<["--"], "rsp-quoting=">, + HelpText<"Quoting style for response files, 'windows' (default) or 'posix'">; +def dash_dash_version : Flag<["--"], "version">, + HelpText<"Print version information">; // Flags for debugging def lldmap : F<"lldmap">; @@ -130,10 +157,9 @@ def errorreport : QF<"errorreport">; def idlout : QF<"idlout">; def ignore : QF<"ignore">; def maxilksize : QF<"maxilksize">; +def natvis : QF<"natvis">; def pdbaltpath : QF<"pdbaltpath">; def tlbid : QF<"tlbid">; def tlbout : QF<"tlbout">; def verbose_all : QF<"verbose">; def guardsym : QF<"guardsym">; - -defm wx : QB<"wx">; |