diff options
| author | gingerBill <bill@gingerbill.org> | 2020-10-20 12:25:11 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2020-10-20 12:25:11 +0100 |
| commit | 0be6ddc7e2149a1f6b8fbc08ecf2674926c11785 (patch) | |
| tree | ad23bdf871991e4272b60f6dba387f3c34d8ec33 /src/main.cpp | |
| parent | b1bdd95f19f5e472200954dd7c312a3fd48ae84d (diff) | |
Add `-microarch:<string>` (e.g. `-microarch:native`)
Diffstat (limited to 'src/main.cpp')
| -rw-r--r-- | src/main.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/main.cpp b/src/main.cpp index b15518d6e..64da5b5b4 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -583,8 +583,9 @@ enum BuildFlagKind { BuildFlag_UseLLVMApi, BuildFlag_IgnoreUnknownAttributes, BuildFlag_ExtraLinkerFlags, - BuildFlag_DisallowDo, + BuildFlag_Microarch, + BuildFlag_DisallowDo, BuildFlag_DefaultToNilAllocator, BuildFlag_Compact, @@ -681,9 +682,10 @@ bool parse_build_flags(Array<String> args) { add_flag(&build_flags, BuildFlag_Vet, str_lit("vet"), BuildFlagParam_None); add_flag(&build_flags, BuildFlag_UseLLVMApi, str_lit("llvm-api"), BuildFlagParam_None); add_flag(&build_flags, BuildFlag_IgnoreUnknownAttributes, str_lit("ignore-unknown-attributes"), BuildFlagParam_None); - add_flag(&build_flags, BuildFlag_ExtraLinkerFlags, str_lit("extra-linker-flags"), BuildFlagParam_String); - add_flag(&build_flags, BuildFlag_DisallowDo, str_lit("disallow-do"), BuildFlagParam_None); + add_flag(&build_flags, BuildFlag_ExtraLinkerFlags, str_lit("extra-linker-flags"), BuildFlagParam_String); + add_flag(&build_flags, BuildFlag_Microarch, str_lit("microarch"), BuildFlagParam_String); + add_flag(&build_flags, BuildFlag_DisallowDo, str_lit("disallow-do"), BuildFlagParam_None); add_flag(&build_flags, BuildFlag_DefaultToNilAllocator, str_lit("default-to-nil-allocator"), BuildFlagParam_None); add_flag(&build_flags, BuildFlag_Compact, str_lit("compact"), BuildFlagParam_None); @@ -1109,6 +1111,12 @@ bool parse_build_flags(Array<String> args) { build_context.extra_linker_flags = value.value_string; break; + case BuildFlag_Microarch: + GB_ASSERT(value.kind == ExactValue_String); + build_context.microarch = value.value_string; + string_to_lower(&build_context.microarch); + break; + case BuildFlag_DisallowDo: build_context.disallow_do = true; break; |