diff options
| author | bumbread <thebumboni@gmail.com> | 2023-03-13 20:25:13 +1100 |
|---|---|---|
| committer | bumbread <thebumboni@gmail.com> | 2023-03-13 20:25:13 +1100 |
| commit | 5f3b6c9722007d731193a90f97e566127120f6ed (patch) | |
| tree | 2399d14b0c737bdb70f1786ea119725511ea51fa /src/main.cpp | |
| parent | 56bfbbf50137ef1f9e551f5a783961cba7d92570 (diff) | |
Added -no-tls flag
Diffstat (limited to 'src/main.cpp')
| -rw-r--r-- | src/main.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/main.cpp b/src/main.cpp index 066675b36..66d860bc0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -634,6 +634,7 @@ enum BuildFlagKind { BuildFlag_Microarch, BuildFlag_TargetFeatures, BuildFlag_MinimumOSVersion, + BuildFlag_NoTLS, BuildFlag_RelocMode, BuildFlag_DisableRedZone, @@ -794,6 +795,7 @@ gb_internal bool parse_build_flags(Array<String> args) { add_flag(&build_flags, BuildFlag_Debug, str_lit("debug"), BuildFlagParam_None, Command__does_check); add_flag(&build_flags, BuildFlag_DisableAssert, str_lit("disable-assert"), BuildFlagParam_None, Command__does_check); add_flag(&build_flags, BuildFlag_NoBoundsCheck, str_lit("no-bounds-check"), BuildFlagParam_None, Command__does_check); + add_flag(&build_flags, BuildFlag_NoTLS, str_lit("no-tls"), BuildFlagParam_None, Command__does_check); add_flag(&build_flags, BuildFlag_NoDynamicLiterals, str_lit("no-dynamic-literals"), BuildFlagParam_None, Command__does_check); add_flag(&build_flags, BuildFlag_NoCRT, str_lit("no-crt"), BuildFlagParam_None, Command__does_build); add_flag(&build_flags, BuildFlag_NoEntryPoint, str_lit("no-entry-point"), BuildFlagParam_None, Command__does_check &~ Command_test); @@ -1312,6 +1314,9 @@ gb_internal bool parse_build_flags(Array<String> args) { case BuildFlag_NoEntryPoint: build_context.no_entry_point = true; break; + case BuildFlag_NoTLS: + build_context.no_tls = true; + break; case BuildFlag_UseLLD: build_context.use_lld = true; break; @@ -2064,6 +2069,10 @@ gb_internal void print_show_help(String const arg0, String const &command) { print_usage_line(2, "Disables automatic linking with the C Run Time"); print_usage_line(0, ""); + print_usage_line(1, "-no-tls"); + print_usage_line(2, "Ignore @thread_local attribute, effectively treating the program as if it is single-threaded"); + print_usage_line(0, ""); + print_usage_line(1, "-lld"); print_usage_line(2, "Use the LLD linker rather than the default"); print_usage_line(0, ""); |