Update which platforms have no f16 symbols
Previously we were building the C versions of these symbols. Since we added the Rust version and updated compiler builtins, these are no longer available by default. This is unintentional, but it gives a better indicator of which symbol versions are not actually provided by the system. Use the list of build failures to correct the list of platforms that do not have `f16` symbols.
This commit is contained in:
parent
8199433bb2
commit
db8daebd5b
1 changed files with 11 additions and 1 deletions
|
|
@ -44,10 +44,20 @@ fn main() {
|
|||
features.insert(Feature::NoSysF16F128Convert);
|
||||
}
|
||||
|
||||
if target.starts_with("wasm32-") {
|
||||
// These platforms do not have f16 symbols available in their system libraries, so
|
||||
// skip related tests. Most of these are missing `f16 <-> f32` conversion routines.
|
||||
if (target.starts_with("aarch64-") && target.contains("linux"))
|
||||
|| target.starts_with("arm")
|
||||
|| target.starts_with("powerpc-")
|
||||
|| target.starts_with("powerpc64-")
|
||||
|| target.starts_with("powerpc64le-")
|
||||
|| target.contains("windows-")
|
||||
// Linking says "error: function signature mismatch: __extendhfsf2" and seems to
|
||||
// think the signature is either `(i32) -> f32` or `(f32) -> f32`
|
||||
|| target.starts_with("wasm32-")
|
||||
{
|
||||
features.insert(Feature::NoSysF16);
|
||||
features.insert(Feature::NoSysF16F128Convert);
|
||||
}
|
||||
|
||||
for feature in features {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue