s390x vector facilities support · Issue #130869 · rust-lang/rust (original) (raw)
Navigation Menu
- Explore
- Pricing
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Appearance settings
Description
This tracks the status of s390x vector facilities support in rustc and standard libraries.
- ABI support
- support z13 vector ABI: done in Support s390x z13 vector ABI #131586
// FIXME: The assumes we're using the non-vector ABI, i.e., compiling // for a pre-z13 machine or using -mno-vx. - remove explicit disabling of the vector feature (blocked on the above FIXME): done in Support s390x z13 vector ABI #131586
// FIXME: The ABI implementation in abi/call/s390x.rs is for now hard-coded to assume the no-vector // ABI. Pass the -vector feature string to LLVM to respect this assumption. base.features = "-vector".into();
- support z13 vector ABI: done in Support s390x z13 vector ABI #131586
- target_feature support
- support nightly-only
cfg(target_feature = "vector")
and unstabletarget_feature(enable = "vector")
(underfeature(s390x_target_feature)
): done in rustc_target: add known safe s390x target features #127506 - support other vector facility-related target features: vector-enhancements-1, vector-enhancements-2, etc. (see also Missing support for target features on s390x #88937); done in add more s390x target features #135630
- stabilize
target_feature = "vector"
(and other vector-related target features if available)
At least blocked until ABI support doneUPDATE: ABI support done
And may be more things are needed given the precedent of postponed stabilization of vector features in RISC-V.
- support nightly-only
- asm support
- support clobber-only vector registers: done in Support clobber_abi and vector/access registers (clobber-only) in s390x inline assembly #130630
- stabilize
feature(asm_experimental_arch)
on s390x: done in Stabilize s390x inline assembly #131258 - support
#[repr(simd)]
types in input/output of asm (i.e., fully support vector registers) underfeature(asm_experimental_reg)
: pending in Support input/output in vector registers of s390x inline assembly (under asm_experimental_reg feature) #131664
Both LLVM and GCC do not documentv
constraint, but actually seem to be supported.
Blocked until ABI support done.UPDATE: ABI support done - stabilize
feature(asm_experimental_reg)
for s390x vector registers (Tracking Issue for asm_experimental_reg #133416)
- core_arch support (tracking issue: Tracking Issue for stdarch_s390x #135681)
- add unstable vector intrinsics to core::arch::s390x: mostly done s390x vector facilities support #130869 (comment)
Blocked until ABI support done.UPDATE: ABI support done
- add unstable vector intrinsics to core::arch::s390x: mostly done s390x vector facilities support #130869 (comment)
- std_detect support (tracking issue: Tracking Issue for stdarch_s390x_feature_detection #135413)
- support unstable
is_s390x_feature_detected!("vector")
: done in add is_s390x_feature_detected stdarch#1699
- support unstable
@rustbot label +O-SystemZ