Stabilize s390x `vector` target feature and `is_s390x_feature_detected!` macro closes https://github.com/rust-lang/rust/issues/145649 closes https://github.com/rust-lang/rust/issues/135413 cc: https://github.com/rust-lang/rust/issues/130869 reference PR: https://github.com/rust-lang/reference/pull/1972 # Stabilization report ## Summary This PR stabilizes the following s390x target features: - `vector` - `vector-enhancements-1` - `vector-enhancements-2` - `vector-enhancements-3` - `vector-packed-decimal` - `vector-packed-decimal-enhancement` - `vector-packed-decimal-enhancement-2` - `vector-packed-decimal-enhancement-3` - `nnp-assist` - `miscellaneous-extensions-2` - `miscellaneous-extensions-3` - `miscellaneous-extensions-4` Additionally, it stabilizes the `std::arch::is_s390x_feature_detected!` macro itself and stably accepts the target features listed above. ## Tests & ABI details Only the `vector` target feature changes the ABI, much like e.g. `avx2` it will, depending on the ABI, pass vector types in vector registers. This behavior is tested extensively: - [tests/assembly-llvm/s390x-vector-abi.rs]( |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||