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.
Since #51695 (I believe), the project I have for compiling linux kernel modules has started failing due to
sin/cos/sqrtsymbols not being available: fishinabarrel/linux-kernel-module-rust#61 (comment)This uses a custom target file which is
x86_64with+soft-float.I believe the issue is that
stdsimduses thellvm.sin.*intrinsics, and LLVM will emit a call tolibmif the platform issoft-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.