Enable f128 -> f16 tests on Linux#631
Conversation
ac303f2 to
be9acef
Compare
f128 -> f16 tests on Linux
b7d1f19 to
0be6054
Compare
|
|
||
| if target.starts_with("i586") || target.starts_with("i686") { | ||
| if target.starts_with("i586") { | ||
| // 32-bit x86 seems to not have `__fixunstfti`, but does have everything else |
There was a problem hiding this comment.
I think this is fixed for i586 as well now?
There was a problem hiding this comment.
I just tried it, looks like they are still not available on i586. I updated the note to mention this
There was a problem hiding this comment.
I still don't understand why this function is available on i686 but not i586: they should be using the exact same docker image and toolchain.
There was a problem hiding this comment.
Ok, think I figured it out - i586 and i686 are both missing __fixunstfti and __fixtfti. i686 was just always disabled at https://github.com/rust-lang/compiler-builtins/pull/631/files#diff-05ae0211bd995d6870067db299c32944cf2b743226442889bb07d48232afc2c5L26 because it has a f128 math bug, https://github.com/rust-lang/compiler-builtins/actions/runs/9640552090/job/26584543080?pr=631#step:13:244.
i586 probably also has that bug, but float tests without sse2 have been disabled since at least #384
compiler-builtins/testcrate/tests/addsub.rs
Lines 113 to 132 in 0ccc1bf
40d1f29 to
f91f194
Compare
Since updating the docker images in <rust-lang#625>, it looks like `__extendhftf2` and `__trunctfhf2` are available on all 64-bit Linux platforms.
f91f194 to
101ba13
Compare
Enable `f128 -> f16` tests on Linux
Since updating the docker images in #625, it looks like
__extendhftf2and__trunctfhf2are available on all 64-bit Linux platforms.