about summary refs log tree commit diff
path: root/compiler/rustc_llvm/llvm-wrapper/CoverageMappingWrapper.cpp
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2024-10-11 15:36:51 +0200
committerGitHub <noreply@github.com>2024-10-11 15:36:51 +0200
commit7c79621462e724d123fb5788e5d797067f5f1222 (patch)
tree81dba8ff6eee30c2073c2c0cd7b54c8b2c8a883d /compiler/rustc_llvm/llvm-wrapper/CoverageMappingWrapper.cpp
parent484c8e78cb915bf1aca57ec62953324fe76b5d37 (diff)
parent562c0d1299443f223b8526876701936ded463cad (diff)
downloadrust-7c79621462e724d123fb5788e5d797067f5f1222.tar.gz
rust-7c79621462e724d123fb5788e5d797067f5f1222.zip
Rollup merge of #129079 - Zoxc:thinlto_imp_symbols, r=wesleywiser
Create `_imp__` symbols also when doing ThinLTO

When generating a rlib crate on Windows we create `dllimport` / `_imp__` symbols for each global. This effectively makes the rlib contain an import library for itself and allows them to both be dynamically and statically linked. However when doing ThinLTO we do not generate these and thus we end up with missing symbols. Microsoft's `link` can fix these up (and emits warnings), but `lld` seems to currently be unable to.

This PR also does this generation for ThinLTO avoiding those issues with `lld` and also avoids the warnings on `link`.

This is an workaround for https://github.com/rust-lang/rust/issues/81408.

cc `@lqd`
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/CoverageMappingWrapper.cpp')
0 files changed, 0 insertions, 0 deletions