From eefb23e43383d042ed4850379dd1be82e06c1ee0 Mon Sep 17 00:00:00 2001 From: Folkert Date: Wed, 27 Jul 2022 12:07:51 +0200 Subject: [PATCH] DCE expect helper for non-expect code gen --- crates/compiler/gen_llvm/src/llvm/externs.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/crates/compiler/gen_llvm/src/llvm/externs.rs b/crates/compiler/gen_llvm/src/llvm/externs.rs index f8059eaa5c..32234817dc 100644 --- a/crates/compiler/gen_llvm/src/llvm/externs.rs +++ b/crates/compiler/gen_llvm/src/llvm/externs.rs @@ -19,6 +19,17 @@ pub fn add_default_roc_externs(env: &Env<'_, '_, '_>) { let usize_type = env.ptr_int(); let i8_ptr_type = ctx.i8_type().ptr_type(AddressSpace::Generic); + match env.mode { + super::build::LlvmBackendMode::CliTest => { + /* linkage is strong, which means this function is exposed */ + } + _ => { + // set linkage to private, so it is DCE'd + let fn_val = module.get_function("set_mmapped_file").unwrap(); + fn_val.set_linkage(Linkage::Private); + } + } + if !env.mode.has_host() { // roc_alloc {