aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorJeroen van Rijn <Kelimion@users.noreply.github.com>2023-11-10 20:14:00 +0100
committerJeroen van Rijn <Kelimion@users.noreply.github.com>2023-11-10 20:14:00 +0100
commitf9039510167c50e0a86e4c25fad5aa08aca24bf0 (patch)
treeea2be709df15fd6fb8058d8e9af341d43b3c5507 /src/main.cpp
parente19460cbd7c847bd5452b2c7bf96b38d06b2a182 (diff)
Facored out `get_default_microarchitecture`
Moved `generic` -> `x86-64-v2` selection into its own procedure so that `llvm_backend.cpp` and `main.cpp` can share the same logic.
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 8a917090b..bf91a0889 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -2529,10 +2529,6 @@ int main(int arg_count, char const **arg_ptr) {
for (;;) {
String str = string_split_iterator(&it, ',');
if (str == "") break;
- // If it's the entry in the list marked (default), we strip off the suffix before the match.
- if (string_ends_with(str, str_lit(" (default)"))) {
- str = substring(str, 0, str.len - 10);
- }
if (str == build_context.microarch) {
// Found matching microarch
print_microarch_list = false;
@@ -2547,12 +2543,19 @@ int main(int arg_count, char const **arg_ptr) {
gb_printf("Possible -microarch values for target %.*s are:\n", LIT(target_arch_names[build_context.metrics.arch]));
gb_printf("\n");
- String march_list = target_microarch_list[build_context.metrics.arch];
+ String march_list = target_microarch_list[build_context.metrics.arch];
String_Iterator it = {march_list, 0};
+
+ String default_march = make_string_c(get_default_microarchitecture());
+
for (;;) {
String str = string_split_iterator(&it, ',');
if (str == "") break;
- gb_printf("\t%.*s\n", LIT(str));
+ if (str == default_march) {
+ gb_printf("\t%.*s (default)\n", LIT(str));
+ } else {
+ gb_printf("\t%.*s\n", LIT(str));
+ }
}
return 0;
}