diff options
author | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2024-08-04 01:47:47 -0500 |
---|---|---|
committer | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2024-10-17 00:58:45 -0500 |
commit | fbfbce19585d9d0b725fbb42c4288db8d9fc8553 (patch) | |
tree | aad1fdd37d932ad1354bc7584a0b0e686dd3f511 /user/rust/stdarch-ppc.patch | |
parent | 3b9833ebc81444bcb1e6817d47fc14b3e49a12e1 (diff) | |
download | packages-fbfbce19585d9d0b725fbb42c4288db8d9fc8553.tar.gz packages-fbfbce19585d9d0b725fbb42c4288db8d9fc8553.tar.bz2 packages-fbfbce19585d9d0b725fbb42c4288db8d9fc8553.tar.xz packages-fbfbce19585d9d0b725fbb42c4288db8d9fc8553.zip |
user/rust: Add version 1.80.0
Diffstat (limited to 'user/rust/stdarch-ppc.patch')
-rw-r--r-- | user/rust/stdarch-ppc.patch | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/user/rust/stdarch-ppc.patch b/user/rust/stdarch-ppc.patch new file mode 100644 index 000000000..eabe0d416 --- /dev/null +++ b/user/rust/stdarch-ppc.patch @@ -0,0 +1,116 @@ +Upstream: https://github.com/rust-lang/stdarch/pull/1582 + +From 7ac103f60d54362a752361dee3e63e23b98a342a Mon Sep 17 00:00:00 2001 +From: Luca Barbato <lu_zero@gentoo.org> +Date: Tue, 11 Jun 2024 09:49:16 +0000 +Subject: [PATCH] Use longer associated types in the Altivec traits + +--- + crates/core_arch/src/powerpc/altivec.rs | 34 ++++++++++++------------- + 1 file changed, 17 insertions(+), 17 deletions(-) + +diff --git a/crates/core_arch/src/powerpc/altivec.rs b/crates/core_arch/src/powerpc/altivec.rs +index 627809c6bc..29cdc41017 100644 +--- a/library/stdarch/crates/core_arch/src/powerpc/altivec.rs ++++ b/library/stdarch/crates/core_arch/src/powerpc/altivec.rs +@@ -410,8 +410,8 @@ mod sealed { + + #[unstable(feature = "stdarch_powerpc", issue = "111145")] + pub trait VectorInsert { +- type S; +- unsafe fn vec_insert<const IDX: u32>(self, s: Self::S) -> Self; ++ type Scalar; ++ unsafe fn vec_insert<const IDX: u32>(self, s: Self::Scalar) -> Self; + } + + const fn idx_in_vec<T, const IDX: u32>() -> u32 { +@@ -422,11 +422,11 @@ mod sealed { + ($ty:ident) => { + #[unstable(feature = "stdarch_powerpc", issue = "111145")] + impl VectorInsert for t_t_l!($ty) { +- type S = $ty; ++ type Scalar = $ty; + #[inline] + #[target_feature(enable = "altivec")] +- unsafe fn vec_insert<const IDX: u32>(self, s: Self::S) -> Self { +- simd_insert(self, const { idx_in_vec::<Self::S, IDX>() }, s) ++ unsafe fn vec_insert<const IDX: u32>(self, s: Self::Scalar) -> Self { ++ simd_insert(self, const { idx_in_vec::<Self::Scalar, IDX>() }, s) + } + } + }; +@@ -442,19 +442,19 @@ mod sealed { + + #[unstable(feature = "stdarch_powerpc", issue = "111145")] + pub trait VectorExtract { +- type S; +- unsafe fn vec_extract<const IDX: u32>(self) -> Self::S; ++ type Scalar; ++ unsafe fn vec_extract<const IDX: u32>(self) -> Self::Scalar; + } + + macro_rules! impl_vec_extract { + ($ty:ident) => { + #[unstable(feature = "stdarch_powerpc", issue = "111145")] + impl VectorExtract for t_t_l!($ty) { +- type S = $ty; ++ type Scalar = $ty; + #[inline] + #[target_feature(enable = "altivec")] +- unsafe fn vec_extract<const IDX: u32>(self) -> Self::S { +- simd_extract(self, const { idx_in_vec::<Self::S, IDX>() }) ++ unsafe fn vec_extract<const IDX: u32>(self) -> Self::Scalar { ++ simd_extract(self, const { idx_in_vec::<Self::Scalar, IDX>() }) + } + } + }; +@@ -3233,18 +3233,18 @@ mod sealed { + + #[unstable(feature = "stdarch_powerpc", issue = "111145")] + pub trait VectorRl { +- type B; +- unsafe fn vec_rl(self, b: Self::B) -> Self; ++ type Shift; ++ unsafe fn vec_rl(self, b: Self::Shift) -> Self; + } + + macro_rules! impl_vec_rl { + ($fun:ident ($a:ident)) => { + #[unstable(feature = "stdarch_powerpc", issue = "111145")] + impl VectorRl for $a { +- type B = t_u!($a); ++ type Shift = t_u!($a); + #[inline] + #[target_feature(enable = "altivec")] +- unsafe fn vec_rl(self, b: Self::B) -> Self { ++ unsafe fn vec_rl(self, b: Self::Shift) -> Self { + transmute($fun(transmute(self), b)) + } + } +@@ -3292,7 +3292,7 @@ mod sealed { + #[inline] + #[target_feature(enable = "altivec")] + #[unstable(feature = "stdarch_powerpc", issue = "111145")] +-pub unsafe fn vec_insert<T, const IDX: u32>(a: T, b: <T as sealed::VectorInsert>::S) -> T ++pub unsafe fn vec_insert<T, const IDX: u32>(a: T, b: <T as sealed::VectorInsert>::Scalar) -> T + where + T: sealed::VectorInsert, + { +@@ -3310,7 +3310,7 @@ where + #[inline] + #[target_feature(enable = "altivec")] + #[unstable(feature = "stdarch_powerpc", issue = "111145")] +-pub unsafe fn vec_extract<T, const IDX: u32>(a: T) -> <T as sealed::VectorExtract>::S ++pub unsafe fn vec_extract<T, const IDX: u32>(a: T) -> <T as sealed::VectorExtract>::Scalar + where + T: sealed::VectorExtract, + { +@@ -3949,7 +3949,7 @@ where + #[inline] + #[target_feature(enable = "altivec")] + #[unstable(feature = "stdarch_powerpc", issue = "111145")] +-pub unsafe fn vec_rl<T>(a: T, b: <T as sealed::VectorRl>::B) -> T ++pub unsafe fn vec_rl<T>(a: T, b: <T as sealed::VectorRl>::Shift) -> T + where + T: sealed::VectorRl, + { |