Revert "Disable big-endian simd in swap_nonoverlapping_bytes"#60588
Revert "Disable big-endian simd in swap_nonoverlapping_bytes"#60588bors merged 1 commit intorust-lang:masterfrom
Conversation
This reverts commit 77bd4dc. Issue rust-lang#42778 was formerly easy to reproduce on two big-endian targets, `powerpc64` and `s390x`, so we disabled SIMD on this function for all big-endian targets as a workaround. I have re-tested this code on `powerpc64` and `s390x`, each with the bundled LLVM 8 and with external LLVM 7 and LLVM 6, and the problems no longer appear. So it seems safe to remove this workaround, although I'm still a little uncomfortable that we never found a root-cause...
|
Do we have a test for this? |
|
I don't have a specific test, because I never managed to reduce a reproducer. Back then the native compiler build would consistently fail for me, but @arielb1 found that cross-compiling from x86-64 produced a working compiler. Now the native build and all libcore tests pass, on both arches with all 3 LLVMs mentioned. |
|
The next thing I'm trying is to build cross-compiled rustc with this patch from an x86_64 host, which I will then use as stage0 for new native builds on those targets. If that works too, I think all scenarios will be covered. |
|
Looks good with a cross-compiled stage0 too! |
|
I'm rather busy these days, and will rather have someone else dealing with any fallout this might cause. |
|
I don't really know what this is about. Maybe someone from @rust-lang/libs can take over? |
|
@bors: r+ |
|
📌 Commit 9a0a87a has been approved by |
Revert "Disable big-endian simd in swap_nonoverlapping_bytes" This reverts commit 77bd4dc (#43159). Issue #42778 was formerly easy to reproduce on two big-endian targets, `powerpc64` and `s390x`, so we disabled SIMD on this function for all big-endian targets as a workaround. I have re-tested this code on `powerpc64` and `s390x`, each with the bundled LLVM 8 and with external LLVM 7 and LLVM 6, and the problems no longer appear. So it seems safe to remove this workaround, although I'm still a little uncomfortable that we never found a root-cause... Closes #42778. r? @arielb1
|
☀️ Test successful - checks-travis, status-appveyor |
This reverts commit 77bd4dc (#43159).
Issue #42778 was formerly easy to reproduce on two big-endian targets,
powerpc64ands390x, so we disabled SIMD on this function for allbig-endian targets as a workaround.
I have re-tested this code on
powerpc64ands390x, each with thebundled LLVM 8 and with external LLVM 7 and LLVM 6, and the problems no
longer appear. So it seems safe to remove this workaround, although I'm
still a little uncomfortable that we never found a root-cause...
Closes #42778.
r? @arielb1