diff options
| author | Laytan Laats <laytanlaats@hotmail.com> | 2024-03-25 14:15:18 +0100 |
|---|---|---|
| committer | Laytan Laats <laytanlaats@hotmail.com> | 2024-03-25 14:15:18 +0100 |
| commit | a2167587ae0612543ae6e5e2bb34f8ceed7487bb (patch) | |
| tree | 45a8ca532be4e8b9f36eb1ff61cccf94ef72e7b8 /src/checker.cpp | |
| parent | dcc263c618c853eb7cc6fa300ace78bdbd6ccbc2 (diff) | |
| parent | b2a35683a40cacb15385c5647531862993aa38e9 (diff) | |
Merge branch 'fix-darwin_amd64-f16-emulation-on-older-microarches' of github.com:laytan/Odin into update-releases-llvm-version
Diffstat (limited to 'src/checker.cpp')
| -rw-r--r-- | src/checker.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/checker.cpp b/src/checker.cpp index 6456cab0c..ad5159d14 100644 --- a/src/checker.cpp +++ b/src/checker.cpp @@ -1115,7 +1115,16 @@ gb_internal void init_universal(void) { add_global_constant("ODIN_COMPILE_TIMESTAMP", t_untyped_integer, exact_value_i64(odin_compile_timestamp())); - add_global_bool_constant("__ODIN_LLVM_F16_SUPPORTED", lb_use_new_pass_system() && !is_arch_wasm()); + { + bool f16_supported = lb_use_new_pass_system(); + if (is_arch_wasm()) { + f16_supported = false; + } else if (build_context.metrics.os == TargetOs_darwin && build_context.metrics.arch == TargetArch_amd64) { + // NOTE(laytan): See #3222 for my ramblings on this. + f16_supported = false; + } + add_global_bool_constant("__ODIN_LLVM_F16_SUPPORTED", f16_supported); + } { GlobalEnumValue values[3] = { |