-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Closed
Labels
A-linkageArea: linking into static, shared libraries and binariesArea: linking into static, shared libraries and binariesA-target-specsArea: Compile-target specificationsArea: Compile-target specificationsC-bugCategory: This is a bug.Category: This is a bug.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Description
Since #51695 (I believe), the project I have for compiling linux kernel modules has started failing due to sin
/cos
/sqrt
symbols not being available: fishinabarrel/linux-kernel-module-rust#61 (comment)
This uses a custom target file which is x86_64
with +soft-float
.
I believe the issue is that stdsimd
uses the llvm.sin.*
intrinsics, and LLVM will emit a call to libm
if the platform is soft-float
(this is speculation, but well founded I think :-)).
Being able to depend on libcore without needing any additional runtime libraries is a hard requirement for compiling for targets like kernel modules. I'm not sure what the right direction for resolving this is.
reynoldsbd and Aaron1011
Metadata
Metadata
Assignees
Labels
A-linkageArea: linking into static, shared libraries and binariesArea: linking into static, shared libraries and binariesA-target-specsArea: Compile-target specificationsArea: Compile-target specificationsC-bugCategory: This is a bug.Category: This is a bug.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.