aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend_proc.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2026-02-04 17:15:48 +0000
committergingerBill <gingerBill@users.noreply.github.com>2026-02-04 17:15:48 +0000
commit6f7a64a47d87f3e61908be5102ba31756f26c8b0 (patch)
tree4e5430e20b2cc99f8775cec0941205793492a104 /src/llvm_backend_proc.cpp
parentb942f72cb085f79b214a596c0628984298358eaa (diff)
Change LTO rules for all platforms
Diffstat (limited to 'src/llvm_backend_proc.cpp')
-rw-r--r--src/llvm_backend_proc.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/llvm_backend_proc.cpp b/src/llvm_backend_proc.cpp
index 7897e17cd..018f47c54 100644
--- a/src/llvm_backend_proc.cpp
+++ b/src/llvm_backend_proc.cpp
@@ -289,11 +289,11 @@ gb_internal lbProcedure *lb_create_procedure(lbModule *m, Entity *entity, bool i
lb_set_linkage_from_entity_flags(p->module, p->value, entity->flags);
- // With LTO on Windows, required procedures with external linkage need to be added to
+ // With LTO on all platforms, required procedures with external linkage need to be added to
// llvm.used to survive linker-level dead code elimination. This is necessary because
// LLVM may generate implicit calls to runtime builtins (e.g., __extendhfsf2 for f16
// conversions) during instruction lowering, after the IR is finalized.
- if (build_context.lto_kind != LTO_None && build_context.metrics.os == TargetOs_windows) {
+ if (build_context.lto_kind != LTO_None) {
if (entity->flags & EntityFlag_Require) {
LLVMLinkage linkage = LLVMGetLinkage(p->value);
if (linkage != LLVMInternalLinkage) {