PKGBUILDs/extra/thunderbird/packed_simd_2-0.3.8.patch

926 lines
71 KiB
Diff
Raw Normal View History

2022-08-29 19:01:18 +00:00
# HG changeset patch
# User Mike Hommey <mh+mozilla@glandium.org>
# Date 1660200949 0
# Node ID fac963c3bc003f12171fbb706fbd0ef676aeaa52
# Parent d6c758891f5d505f3dcb09cc559b9aa4d3199597
Bug 1783784 - Update packed_simd_2 to 0.3.8. r=hsivonen,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D154063
diff --git a/.cargo/config.in b/.cargo/config.in
--- a/.cargo/config.in
+++ b/.cargo/config.in
@@ -70,17 +70,17 @@ rev = "499b95580c8b276e52bd9757d73524950
[source."https://github.com/jfkthame/mapped_hyph.git"]
git = "https://github.com/jfkthame/mapped_hyph.git"
replace-with = "vendored-sources"
rev = "746743227485a83123784df0c53227ab466612ed"
[source."https://github.com/hsivonen/packed_simd"]
git = "https://github.com/hsivonen/packed_simd"
replace-with = "vendored-sources"
-rev = "c149d0a519bf878567c7630096737669ec2ff15f"
+rev = "90eebb82a107cbec1c8e406d9223819417e96de1"
[source."https://github.com/hsivonen/chardetng_c"]
git = "https://github.com/hsivonen/chardetng_c"
replace-with = "vendored-sources"
rev = "ed8a4c6f900a90d4dbc1d64b856e61490a1c3570"
[source."https://github.com/hsivonen/chardetng"]
git = "https://github.com/hsivonen/chardetng"
diff --git a/Cargo.lock b/Cargo.lock
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3904,20 +3904,21 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ff55baddef9e4ad00f88b6c743a2a8062d4c6ade126c2a528644b8e444d52ce"
dependencies = [
"stable_deref_trait",
]
[[package]]
name = "packed_simd_2"
-version = "0.3.7"
-source = "git+https://github.com/hsivonen/packed_simd?rev=c149d0a519bf878567c7630096737669ec2ff15f#c149d0a519bf878567c7630096737669ec2ff15f"
+version = "0.3.8"
+source = "git+https://github.com/hsivonen/packed_simd?rev=90eebb82a107cbec1c8e406d9223819417e96de1#90eebb82a107cbec1c8e406d9223819417e96de1"
dependencies = [
"cfg-if 1.0.0",
+ "rustc_version",
]
[[package]]
name = "parking_lot"
version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
dependencies = [
diff --git a/Cargo.toml b/Cargo.toml
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -140,16 +140,16 @@ moz_asserts = { path = "mozglue/static/r
# Other overrides
async-task = { git = "https://github.com/smol-rs/async-task", rev="f6488e35beccb26eb6e85847b02aa78a42cd3d0e" }
chardetng = { git = "https://github.com/hsivonen/chardetng", rev="3484d3e3ebdc8931493aa5df4d7ee9360a90e76b" }
chardetng_c = { git = "https://github.com/hsivonen/chardetng_c", rev="ed8a4c6f900a90d4dbc1d64b856e61490a1c3570" }
coremidi = { git = "https://github.com/chris-zen/coremidi.git", rev="fc68464b5445caf111e41f643a2e69ccce0b4f83" }
fog = { path = "toolkit/components/glean/api" }
libudev-sys = { path = "dom/webauthn/libudev-sys" }
-packed_simd = { package = "packed_simd_2", git = "https://github.com/hsivonen/packed_simd", rev="c149d0a519bf878567c7630096737669ec2ff15f" }
+packed_simd = { package = "packed_simd_2", git = "https://github.com/hsivonen/packed_simd", rev="90eebb82a107cbec1c8e406d9223819417e96de1" }
midir = { git = "https://github.com/mozilla/midir.git", rev = "4c11f0ffb5d6a10de4aff40a7b81218b33b94e6f" }
minidump_writer_linux = { git = "https://github.com/rust-minidump/minidump-writer.git", rev = "75ada456c92a429704691a85e1cb42fef8cafc0d" }
# Patch mio 0.6 to use winapi 0.3 and miow 0.3, getting rid of winapi 0.2.
# There is not going to be new version of mio 0.6, mio now being >= 0.7.11.
[patch.crates-io.mio]
path = "third_party/rust/mio-0.6.23"
diff --git a/third_party/rust/packed_simd_2/.cargo-checksum.json b/third_party/rust/packed_simd_2/.cargo-checksum.json
--- a/third_party/rust/packed_simd_2/.cargo-checksum.json
+++ b/third_party/rust/packed_simd_2/.cargo-checksum.json
@@ -1,1 +1,1 @@
-{"files":{".appveyor.yml":"f1ed01850e0d725f9498f52a1a63ddf40702ad6e0bf5b2d7c4c04d76e96794a3",".travis.yml":"30a61a5ec53355fc1f3585e1690280308c2b7961701abc11e8389b235b647178","Cargo.toml":"f85e54e13a05f6e4f27c230ab81430af27b6ff80a1c036bd70c42ea115f89487","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"882f8894b333becf490d23c9024a86fd1327c8edea33aa8dbb98dc2f2ddb3956","bors.toml":"dee881dc69b9b7834e4eba5d95c3ed5a416d4628815a167d6a22d4cb4fb064b8","build.rs":"019ed29c43989782d8eec3a961654cfc172d7a7898da4eca8f654700af7e1988","ci/all.sh":"2ae6b2445b4db83833e40b37efd0016c6b9879ee988b9b3ef94db5439a3e1606","ci/android-install-ndk.sh":"0f1746108cc30bf9b9ba45bcde7b19fc1a8bdf5b0258035b4eb8dc69b75efac4","ci/android-install-sdk.sh":"3490432022c5c8f5a115c084f7a9aca1626f96c0c87ffb62019228c4346b47e4","ci/android-sysimage.sh":"ebf4e5daa1f0fe1b2092b79f0f3f161c4c4275cb744e52352c4d81ab451e4c5a","ci/benchmark.sh":"b61d19ef6b90deba8fb79dee74c8b062d94844676293da346da87bb78a9a49a4","ci/deploy_and_run_on_ios_simulator.rs":"ec8ecf82d92072676aa47f0d1a3d021b60a7ae3531153ef12d2ff4541fc294dc","ci/docker/aarch64-linux-android/Dockerfile":"ace2e7d33c87bc0f6d3962a4a3408c04557646f7f51ab99cfbf574906796b016","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"da88c0d50f16dc08448c7fdf1fa5ed2cbe576acf9e7dd85b5b818621b2a8c702","ci/docker/arm-linux-androideabi/Dockerfile":"370e55d3330a413a3ccf677b3afb3e0ef9018a5fab263faa97ae8ac017fc2286","ci/docker/arm-unknown-linux-gnueabi/Dockerfile":"bb5f8ae890707c128652290ffc544447643bf12037ddd73c6ad6989f848cb380","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"1afaefcbc05b740859acd4e067bc92439be6bcbe8f2e9678474fb434bcd398d9","ci/docker/armv7-unknown-linux-gnueabihf/Dockerfile":"8282ea707a94109beed47a57574755e2d58401735904a03f85fb64c578c53b4f","ci/docker/i586-unknown-linux-gnu/Dockerfile":"49792922269f371bd29da4727e9085101b27be67a6b97755d0196c63317f7abb","ci/docker/i686-unknown-linux-gnu/Dockerfile":"49792922269f371bd29da4727e9085101b27be67a6b97755d0196c63317f7abb","ci/docker/mips-unknown-linux-gnu/Dockerfile":"b2ebc25797612c4f8395fe9d407725156044955bfbcf442036b7f55b43a5f9da","ci/docker/mips64-unknown-linux-gnuabi64/Dockerfile":"b0c1692ac65bc56dd30494b1993d8e929c48cc9c4b92029b7c7592af6d4f9220","ci/docker/mips64el-unknown-linux-gnuabi64/Dockerfile":"4e9249c179300138141d0b2b7401b11897f64aed69f541f078c1db4594df2827","ci/docker/mipsel-unknown-linux-musl/Dockerfile":"3164c52b0dcbb01afa78292b15b5c43503ccf0491cf6eb801ec2bf22ae274e52","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"786f799d0b56eb54d7b6c4b00e1aed4ce81776e14e44767e083c89d014b72004","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"e8bc363837cd9c2d8b22402acb8c1c329efc11ba5d12170603d2fe2eae9da059","ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile":"47998d45b781d797b9e6085ebe898d90de0c952b54537a8db4e8d7503eb032d9","ci/docker/s390x-unknown-linux-gnu/Dockerfile":"93fb44df3d7fd31ead158570667c97b5076a05c3d968af4a84bc13819a8f2db8","ci/docker/sparc64-unknown-linux-gnu/Dockerfile":"da1c39a3ff1fe22e41395fa7c8934e90b4c1788e551b9aec6e38bfd94effc437","ci/docker/thumbv7neon-linux-androideabi/Dockerfile":"c2decd5591bd7a09378901bef629cd944acf052eb55e4f35b79eb9cb4d62246a","ci/docker/thumbv7neon-unknown-linux-gnueabihf/Dockerfile":"51955a8bf3c4d440f47382af6f5426ebff94ab01a04da36175babda9a057740f","ci/docker/wasm32-unknown-unknown/Dockerfile":"5a022299f56730cf8c432a07391e95e199cfa36dc8da2a96c9d185c8de93e913","ci/docker/x86_64-linux-android/Dockerfile":"685040273cf350d5509e580ac451555efa19790c8723ca2af066adadc6880ad2","ci/docker/x86_64-unknown-linux-gnu-emulated/Dockerfile":"44b6203d9290bfdc53d81219f0937e1110847a23dd982ec8c4de388354f01536","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"7f4e3ca5fa288ea70edb4d1f75309708cd30b192e2e4444e61c4d5b3b58f89cf","ci/dox.sh":"434e9611c52e389312d2b03564adf09429f10cc76fe66a8644adb104903b87b7","ci/linux-s390x.sh":"d6b732d7795b4ba131326aff893bca6228a7d2eb0e9402f135705413dbbe0dce","ci/linux-sparc64.sh":"c92966838b1ab
\ No newline at end of file
+{"files":{".appveyor.yml":"f1ed01850e0d725f9498f52a1a63ddf40702ad6e0bf5b2d7c4c04d76e96794a3",".travis.yml":"30a61a5ec53355fc1f3585e1690280308c2b7961701abc11e8389b235b647178","Cargo.toml":"2cab084b3d55d0b307788b02a6206a3ec39fee027535dc62d6421bce70e2e2c1","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"fa4dd64f66972217d35b7653338c9e2011ccd8f3008ae7c0103272d4287f9b1d","bors.toml":"dee881dc69b9b7834e4eba5d95c3ed5a416d4628815a167d6a22d4cb4fb064b8","build.rs":"a766fba121243a9b617432c592873801adb74c3a2f4a24d9d45859b8ce9357fc","ci/all.sh":"2ae6b2445b4db83833e40b37efd0016c6b9879ee988b9b3ef94db5439a3e1606","ci/android-install-ndk.sh":"0f1746108cc30bf9b9ba45bcde7b19fc1a8bdf5b0258035b4eb8dc69b75efac4","ci/android-install-sdk.sh":"3490432022c5c8f5a115c084f7a9aca1626f96c0c87ffb62019228c4346b47e4","ci/android-sysimage.sh":"ebf4e5daa1f0fe1b2092b79f0f3f161c4c4275cb744e52352c4d81ab451e4c5a","ci/benchmark.sh":"b61d19ef6b90deba8fb79dee74c8b062d94844676293da346da87bb78a9a49a4","ci/deploy_and_run_on_ios_simulator.rs":"ec8ecf82d92072676aa47f0d1a3d021b60a7ae3531153ef12d2ff4541fc294dc","ci/docker/aarch64-linux-android/Dockerfile":"ace2e7d33c87bc0f6d3962a4a3408c04557646f7f51ab99cfbf574906796b016","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"da88c0d50f16dc08448c7fdf1fa5ed2cbe576acf9e7dd85b5b818621b2a8c702","ci/docker/arm-linux-androideabi/Dockerfile":"370e55d3330a413a3ccf677b3afb3e0ef9018a5fab263faa97ae8ac017fc2286","ci/docker/arm-unknown-linux-gnueabi/Dockerfile":"bb5f8ae890707c128652290ffc544447643bf12037ddd73c6ad6989f848cb380","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"1afaefcbc05b740859acd4e067bc92439be6bcbe8f2e9678474fb434bcd398d9","ci/docker/armv7-unknown-linux-gnueabihf/Dockerfile":"8282ea707a94109beed47a57574755e2d58401735904a03f85fb64c578c53b4f","ci/docker/i586-unknown-linux-gnu/Dockerfile":"49792922269f371bd29da4727e9085101b27be67a6b97755d0196c63317f7abb","ci/docker/i686-unknown-linux-gnu/Dockerfile":"49792922269f371bd29da4727e9085101b27be67a6b97755d0196c63317f7abb","ci/docker/mips-unknown-linux-gnu/Dockerfile":"b2ebc25797612c4f8395fe9d407725156044955bfbcf442036b7f55b43a5f9da","ci/docker/mips64-unknown-linux-gnuabi64/Dockerfile":"b0c1692ac65bc56dd30494b1993d8e929c48cc9c4b92029b7c7592af6d4f9220","ci/docker/mips64el-unknown-linux-gnuabi64/Dockerfile":"4e9249c179300138141d0b2b7401b11897f64aed69f541f078c1db4594df2827","ci/docker/mipsel-unknown-linux-musl/Dockerfile":"3164c52b0dcbb01afa78292b15b5c43503ccf0491cf6eb801ec2bf22ae274e52","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"786f799d0b56eb54d7b6c4b00e1aed4ce81776e14e44767e083c89d014b72004","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"e8bc363837cd9c2d8b22402acb8c1c329efc11ba5d12170603d2fe2eae9da059","ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile":"47998d45b781d797b9e6085ebe898d90de0c952b54537a8db4e8d7503eb032d9","ci/docker/s390x-unknown-linux-gnu/Dockerfile":"93fb44df3d7fd31ead158570667c97b5076a05c3d968af4a84bc13819a8f2db8","ci/docker/sparc64-unknown-linux-gnu/Dockerfile":"da1c39a3ff1fe22e41395fa7c8934e90b4c1788e551b9aec6e38bfd94effc437","ci/docker/thumbv7neon-linux-androideabi/Dockerfile":"c2decd5591bd7a09378901bef629cd944acf052eb55e4f35b79eb9cb4d62246a","ci/docker/thumbv7neon-unknown-linux-gnueabihf/Dockerfile":"51955a8bf3c4d440f47382af6f5426ebff94ab01a04da36175babda9a057740f","ci/docker/wasm32-unknown-unknown/Dockerfile":"5a022299f56730cf8c432a07391e95e199cfa36dc8da2a96c9d185c8de93e913","ci/docker/x86_64-linux-android/Dockerfile":"685040273cf350d5509e580ac451555efa19790c8723ca2af066adadc6880ad2","ci/docker/x86_64-unknown-linux-gnu-emulated/Dockerfile":"44b6203d9290bfdc53d81219f0937e1110847a23dd982ec8c4de388354f01536","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"7f4e3ca5fa288ea70edb4d1f75309708cd30b192e2e4444e61c4d5b3b58f89cf","ci/dox.sh":"434e9611c52e389312d2b03564adf09429f10cc76fe66a8644adb104903b87b7","ci/linux-s390x.sh":"d6b732d7795b4ba131326aff893bca6228a7d2eb0e9402f135705413dbbe0dce","ci/linux-sparc64.sh":"c92966838b1ab
\ No newline at end of file
diff --git a/third_party/rust/packed_simd_2/Cargo.toml b/third_party/rust/packed_simd_2/Cargo.toml
--- a/third_party/rust/packed_simd_2/Cargo.toml
+++ b/third_party/rust/packed_simd_2/Cargo.toml
@@ -1,11 +1,11 @@
[package]
name = "packed_simd_2"
-version = "0.3.7"
+version = "0.3.8"
description = "Portable Packed SIMD vectors"
documentation = "https://docs.rs/crate/packed_simd/"
homepage = "https://github.com/rust-lang/packed_simd"
repository = "https://github.com/rust-lang/packed_simd"
keywords = ["simd", "vector", "portability"]
categories = ["hardware-support", "concurrency", "no-std", "data-structures"]
license = "MIT OR Apache-2.0"
build = "build.rs"
@@ -18,16 +18,19 @@ codecov = { repository = "rust-lang/pack
is-it-maintained-issue-resolution = { repository = "rust-lang/packed_simd" }
is-it-maintained-open-issues = { repository = "rust-lang/packed_simd" }
maintenance = { status = "experimental" }
[dependencies]
cfg-if = "1.0.0"
core_arch = { version = "0.1.5", optional = true }
+[build-dependencies]
+rustc_version = "0.4"
+
[features]
default = []
into_bits = []
libcore_neon = []
[dev-dependencies]
paste = "^0.1.3"
arrayvec = { version = "^0.5", default-features = false }
diff --git a/third_party/rust/packed_simd_2/README.md b/third_party/rust/packed_simd_2/README.md
--- a/third_party/rust/packed_simd_2/README.md
+++ b/third_party/rust/packed_simd_2/README.md
@@ -3,17 +3,17 @@
The original maintainer is out of contact, and the new maintainers (the Portable SIMD Project Group) do not have the appropriate crates.io permissions to issue updates.
We are aware that the version available on crates.io is currently broken, and will not build.
If you need to continue to use the crate, we have published a "next version" under an alternative name.
Adjust your `[dependencies]` section of `Cargo.toml` to be the following:
```toml
-packed_simd = { version = "0.3.6", package = "packed_simd_2" }
+packed_simd = { version = "0.3.8", package = "packed_simd_2" }
```
# `Simd<[T; N]>`
## Implementation of [Rust RFC #2366: `std::simd`][rfc2366]
[![Travis-CI Status]][travis] <!-- [![Appveyor Status]][appveyor] --> [![Latest Version]][crates.io] [![docs]][master_docs]
diff --git a/third_party/rust/packed_simd_2/build.rs b/third_party/rust/packed_simd_2/build.rs
--- a/third_party/rust/packed_simd_2/build.rs
+++ b/third_party/rust/packed_simd_2/build.rs
@@ -1,6 +1,11 @@
+use rustc_version::{version, Version};
+
fn main() {
let target = std::env::var("TARGET").expect("TARGET environment variable not defined");
if target.contains("neon") {
println!("cargo:rustc-cfg=libcore_neon");
}
+ if version().unwrap() < Version::parse("1.61.0-alpha").unwrap() {
+ println!("cargo:rustc-cfg=aarch64_target_feature");
+ }
}
diff --git a/third_party/rust/packed_simd_2/src/api.rs b/third_party/rust/packed_simd_2/src/api.rs
--- a/third_party/rust/packed_simd_2/src/api.rs
+++ b/third_party/rust/packed_simd_2/src/api.rs
@@ -1,13 +1,13 @@
//! Implements the Simd<[T; N]> APIs
#[macro_use]
mod bitmask;
-crate mod cast;
+pub(crate) mod cast;
#[macro_use]
mod cmp;
#[macro_use]
mod default;
#[macro_use]
mod fmt;
#[macro_use]
mod from;
@@ -32,17 +32,17 @@ mod shuffle1_dyn;
#[macro_use]
mod slice;
#[macro_use]
mod swap_bytes;
#[macro_use]
mod bit_manip;
#[cfg(feature = "into_bits")]
-crate mod into_bits;
+pub(crate) mod into_bits;
macro_rules! impl_i {
([$elem_ty:ident; $elem_n:expr]: $tuple_id:ident, $mask_ty:ident
| $ielem_ty:ident, $ibitmask_ty:ident | $test_tt:tt | $($elem_ids:ident),*
| From: $($from_vec_ty:ident),* | $(#[$doc:meta])*) => {
impl_minimal_iuf!([$elem_ty; $elem_n]: $tuple_id | $ielem_ty | $test_tt
| $($elem_ids),* | $(#[$doc])*);
impl_ops_vector_arithmetic!([$elem_ty; $elem_n]: $tuple_id | $test_tt);
diff --git a/third_party/rust/packed_simd_2/src/codegen.rs b/third_party/rust/packed_simd_2/src/codegen.rs
--- a/third_party/rust/packed_simd_2/src/codegen.rs
+++ b/third_party/rust/packed_simd_2/src/codegen.rs
@@ -1,24 +1,24 @@
//! Code-generation utilities
-crate mod bit_manip;
-crate mod llvm;
-crate mod math;
-crate mod reductions;
-crate mod shuffle;
-crate mod shuffle1_dyn;
-crate mod swap_bytes;
+pub(crate) mod bit_manip;
+pub(crate) mod llvm;
+pub(crate) mod math;
+pub(crate) mod reductions;
+pub(crate) mod shuffle;
+pub(crate) mod shuffle1_dyn;
+pub(crate) mod swap_bytes;
macro_rules! impl_simd_array {
([$elem_ty:ident; $elem_count:expr]:
$tuple_id:ident | $($elem_tys:ident),*) => {
#[derive(Copy, Clone)]
#[repr(simd)]
- pub struct $tuple_id($(crate $elem_tys),*);
+ pub struct $tuple_id($(pub(crate) $elem_tys),*);
//^^^^^^^ leaked through SimdArray
impl crate::sealed::Seal for [$elem_ty; $elem_count] {}
impl crate::sealed::SimdArray for [$elem_ty; $elem_count] {
type Tuple = $tuple_id;
type T = $elem_ty;
const N: usize = $elem_count;
@@ -30,33 +30,33 @@ macro_rules! impl_simd_array {
type Element = $elem_ty;
const LANES: usize = $elem_count;
type LanesType = [u32; $elem_count];
}
}
}
-crate mod pointer_sized_int;
+pub(crate) mod pointer_sized_int;
-crate mod v16;
-crate use self::v16::*;
+pub(crate) mod v16;
+pub(crate) use self::v16::*;
-crate mod v32;
-crate use self::v32::*;
+pub(crate) mod v32;
+pub(crate) use self::v32::*;
-crate mod v64;
-crate use self::v64::*;
+pub(crate) mod v64;
+pub(crate) use self::v64::*;
-crate mod v128;
-crate use self::v128::*;
+pub(crate) mod v128;
+pub(crate) use self::v128::*;
-crate mod v256;
-crate use self::v256::*;
+pub(crate) mod v256;
+pub(crate) use self::v256::*;
-crate mod v512;
-crate use self::v512::*;
+pub(crate) mod v512;
+pub(crate) use self::v512::*;
-crate mod vSize;
-crate use self::vSize::*;
+pub(crate) mod vSize;
+pub(crate) use self::vSize::*;
-crate mod vPtr;
-crate use self::vPtr::*;
+pub(crate) mod vPtr;
+pub(crate) use self::vPtr::*;
diff --git a/third_party/rust/packed_simd_2/src/codegen/bit_manip.rs b/third_party/rust/packed_simd_2/src/codegen/bit_manip.rs
--- a/third_party/rust/packed_simd_2/src/codegen/bit_manip.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/bit_manip.rs
@@ -1,12 +1,12 @@
//! LLVM bit manipulation intrinsics.
#[rustfmt::skip]
-use crate::*;
+pub(crate) use crate::*;
#[allow(improper_ctypes, dead_code)]
extern "C" {
#[link_name = "llvm.ctlz.v2i8"]
fn ctlz_u8x2(x: u8x2, is_zero_undef: bool) -> u8x2;
#[link_name = "llvm.ctlz.v4i8"]
fn ctlz_u8x4(x: u8x4, is_zero_undef: bool) -> u8x4;
#[link_name = "llvm.ctlz.v8i8"]
@@ -142,17 +142,17 @@ extern "C" {
#[link_name = "llvm.ctpop.v1i128"]
fn ctpop_u128x1(x: u128x1) -> u128x1;
#[link_name = "llvm.ctpop.v2i128"]
fn ctpop_u128x2(x: u128x2) -> u128x2;
#[link_name = "llvm.ctpop.v4i128"]
fn ctpop_u128x4(x: u128x4) -> u128x4;
}
-crate trait BitManip {
+pub(crate) trait BitManip {
fn ctpop(self) -> Self;
fn ctlz(self) -> Self;
fn cttz(self) -> Self;
}
macro_rules! impl_bit_manip {
(inner: $ty:ident, $scalar:ty, $uty:ident,
$ctpop:ident, $ctlz:ident, $cttz:ident) => {
diff --git a/third_party/rust/packed_simd_2/src/codegen/llvm.rs b/third_party/rust/packed_simd_2/src/codegen/llvm.rs
--- a/third_party/rust/packed_simd_2/src/codegen/llvm.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/llvm.rs
@@ -71,58 +71,58 @@ pub unsafe fn __shuffle_vector64<const I
where
T: Simd,
<T as Simd>::Element: Shuffle<[u32; 64], Output = U>,
{
simd_shuffle64(x, y, IDX)
}
extern "platform-intrinsic" {
- crate fn simd_eq<T, U>(x: T, y: T) -> U;
- crate fn simd_ne<T, U>(x: T, y: T) -> U;
- crate fn simd_lt<T, U>(x: T, y: T) -> U;
- crate fn simd_le<T, U>(x: T, y: T) -> U;
- crate fn simd_gt<T, U>(x: T, y: T) -> U;
- crate fn simd_ge<T, U>(x: T, y: T) -> U;
+ pub(crate) fn simd_eq<T, U>(x: T, y: T) -> U;
+ pub(crate) fn simd_ne<T, U>(x: T, y: T) -> U;
+ pub(crate) fn simd_lt<T, U>(x: T, y: T) -> U;
+ pub(crate) fn simd_le<T, U>(x: T, y: T) -> U;
+ pub(crate) fn simd_gt<T, U>(x: T, y: T) -> U;
+ pub(crate) fn simd_ge<T, U>(x: T, y: T) -> U;
- crate fn simd_insert<T, U>(x: T, idx: u32, val: U) -> T;
- crate fn simd_extract<T, U>(x: T, idx: u32) -> U;
+ pub(crate) fn simd_insert<T, U>(x: T, idx: u32, val: U) -> T;
+ pub(crate) fn simd_extract<T, U>(x: T, idx: u32) -> U;
- crate fn simd_cast<T, U>(x: T) -> U;
+ pub(crate) fn simd_cast<T, U>(x: T) -> U;
- crate fn simd_add<T>(x: T, y: T) -> T;
- crate fn simd_sub<T>(x: T, y: T) -> T;
- crate fn simd_mul<T>(x: T, y: T) -> T;
- crate fn simd_div<T>(x: T, y: T) -> T;
- crate fn simd_rem<T>(x: T, y: T) -> T;
- crate fn simd_shl<T>(x: T, y: T) -> T;
- crate fn simd_shr<T>(x: T, y: T) -> T;
- crate fn simd_and<T>(x: T, y: T) -> T;
- crate fn simd_or<T>(x: T, y: T) -> T;
- crate fn simd_xor<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_add<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_sub<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_mul<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_div<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_rem<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_shl<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_shr<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_and<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_or<T>(x: T, y: T) -> T;
+ pub(crate) fn simd_xor<T>(x: T, y: T) -> T;
- crate fn simd_reduce_add_unordered<T, U>(x: T) -> U;
- crate fn simd_reduce_mul_unordered<T, U>(x: T) -> U;
- crate fn simd_reduce_add_ordered<T, U>(x: T, acc: U) -> U;
- crate fn simd_reduce_mul_ordered<T, U>(x: T, acc: U) -> U;
- crate fn simd_reduce_min<T, U>(x: T) -> U;
- crate fn simd_reduce_max<T, U>(x: T) -> U;
- crate fn simd_reduce_min_nanless<T, U>(x: T) -> U;
- crate fn simd_reduce_max_nanless<T, U>(x: T) -> U;
- crate fn simd_reduce_and<T, U>(x: T) -> U;
- crate fn simd_reduce_or<T, U>(x: T) -> U;
- crate fn simd_reduce_xor<T, U>(x: T) -> U;
- crate fn simd_reduce_all<T>(x: T) -> bool;
- crate fn simd_reduce_any<T>(x: T) -> bool;
+ pub(crate) fn simd_reduce_add_unordered<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_mul_unordered<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_add_ordered<T, U>(x: T, acc: U) -> U;
+ pub(crate) fn simd_reduce_mul_ordered<T, U>(x: T, acc: U) -> U;
+ pub(crate) fn simd_reduce_min<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_max<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_min_nanless<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_max_nanless<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_and<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_or<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_xor<T, U>(x: T) -> U;
+ pub(crate) fn simd_reduce_all<T>(x: T) -> bool;
+ pub(crate) fn simd_reduce_any<T>(x: T) -> bool;
- crate fn simd_select<M, T>(m: M, a: T, b: T) -> T;
+ pub(crate) fn simd_select<M, T>(m: M, a: T, b: T) -> T;
- crate fn simd_fmin<T>(a: T, b: T) -> T;
- crate fn simd_fmax<T>(a: T, b: T) -> T;
+ pub(crate) fn simd_fmin<T>(a: T, b: T) -> T;
+ pub(crate) fn simd_fmax<T>(a: T, b: T) -> T;
- crate fn simd_fsqrt<T>(a: T) -> T;
- crate fn simd_fma<T>(a: T, b: T, c: T) -> T;
+ pub(crate) fn simd_fsqrt<T>(a: T) -> T;
+ pub(crate) fn simd_fma<T>(a: T, b: T, c: T) -> T;
- crate fn simd_gather<T, P, M>(value: T, pointers: P, mask: M) -> T;
- crate fn simd_scatter<T, P, M>(value: T, pointers: P, mask: M);
+ pub(crate) fn simd_gather<T, P, M>(value: T, pointers: P, mask: M) -> T;
+ pub(crate) fn simd_scatter<T, P, M>(value: T, pointers: P, mask: M);
- crate fn simd_bitmask<T, U>(value: T) -> U;
+ pub(crate) fn simd_bitmask<T, U>(value: T) -> U;
}
diff --git a/third_party/rust/packed_simd_2/src/codegen/math.rs b/third_party/rust/packed_simd_2/src/codegen/math.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math.rs
@@ -1,3 +1,3 @@
//! Vertical math operations
-crate mod float;
+pub(crate) mod float;
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float.rs b/third_party/rust/packed_simd_2/src/codegen/math/float.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float.rs
@@ -1,18 +1,18 @@
//! Vertical floating-point math operations.
#![allow(clippy::useless_transmute)]
#[macro_use]
-crate mod macros;
-crate mod abs;
-crate mod cos;
-crate mod cos_pi;
-crate mod exp;
-crate mod ln;
-crate mod mul_add;
-crate mod mul_adde;
-crate mod powf;
-crate mod sin;
-crate mod sin_cos_pi;
-crate mod sin_pi;
-crate mod sqrt;
-crate mod sqrte;
+pub(crate) mod macros;
+pub(crate) mod abs;
+pub(crate) mod cos;
+pub(crate) mod cos_pi;
+pub(crate) mod exp;
+pub(crate) mod ln;
+pub(crate) mod mul_add;
+pub(crate) mod mul_adde;
+pub(crate) mod powf;
+pub(crate) mod sin;
+pub(crate) mod sin_cos_pi;
+pub(crate) mod sin_pi;
+pub(crate) mod sqrt;
+pub(crate) mod sqrte;
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/abs.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/abs.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/abs.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/abs.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `fabs`
#![allow(unused)]
// FIXME 64-bit 1 elem vectors fabs
use crate::*;
-crate trait Abs {
+pub(crate) trait Abs {
fn abs(self) -> Self;
}
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.fabs.v2f32"]
fn fabs_v2f32(x: f32x2) -> f32x2;
#[link_name = "llvm.fabs.v4f32"]
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/cos.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/cos.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/cos.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/cos.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `cos`
#![allow(unused)]
// FIXME 64-bit 1 elem vector cos
use crate::*;
-crate trait Cos {
+pub(crate) trait Cos {
fn cos(self) -> Self;
}
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.cos.v2f32"]
fn cos_v2f32(x: f32x2) -> f32x2;
#[link_name = "llvm.cos.v4f32"]
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/cos_pi.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/cos_pi.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/cos_pi.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/cos_pi.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `cos`
#![allow(unused)]
// FIXME 64-bit 1 elem vectors cos_pi
use crate::*;
-crate trait CosPi {
+pub(crate) trait CosPi {
fn cos_pi(self) -> Self;
}
gen_unary_impl_table!(CosPi, cos_pi);
macro_rules! impl_def {
($vid:ident, $PI:path) => {
impl CosPi for $vid {
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/exp.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/exp.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/exp.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/exp.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `exp`
#![allow(unused)]
// FIXME 64-bit expgle elem vectors misexpg
use crate::*;
-crate trait Exp {
+pub(crate) trait Exp {
fn exp(self) -> Self;
}
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.exp.v2f32"]
fn exp_v2f32(x: f32x2) -> f32x2;
#[link_name = "llvm.exp.v4f32"]
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/ln.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/ln.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/ln.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/ln.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `ln`
#![allow(unused)]
// FIXME 64-bit lngle elem vectors mislng
use crate::*;
-crate trait Ln {
+pub(crate) trait Ln {
fn ln(self) -> Self;
}
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.log.v2f32"]
fn ln_v2f32(x: f32x2) -> f32x2;
#[link_name = "llvm.log.v4f32"]
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/mul_add.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/mul_add.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/mul_add.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/mul_add.rs
@@ -1,15 +1,15 @@
//! Vertical floating-point `mul_add`
#![allow(unused)]
use crate::*;
// FIXME: 64-bit 1 element mul_add
-crate trait MulAdd {
+pub(crate) trait MulAdd {
fn mul_add(self, y: Self, z: Self) -> Self;
}
#[cfg(not(target_arch = "s390x"))]
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.fma.v2f32"]
fn fma_v2f32(x: f32x2, y: f32x2, z: f32x2) -> f32x2;
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/mul_adde.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/mul_adde.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/mul_adde.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/mul_adde.rs
@@ -1,14 +1,14 @@
//! Approximation for floating-point `mul_add`
use crate::*;
// FIXME: 64-bit 1 element mul_adde
-crate trait MulAddE {
+pub(crate) trait MulAddE {
fn mul_adde(self, y: Self, z: Self) -> Self;
}
#[cfg(not(target_arch = "s390x"))]
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.fmuladd.v2f32"]
fn fmuladd_v2f32(x: f32x2, y: f32x2, z: f32x2) -> f32x2;
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/powf.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/powf.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/powf.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/powf.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `powf`
#![allow(unused)]
// FIXME 64-bit powfgle elem vectors mispowfg
use crate::*;
-crate trait Powf {
+pub(crate) trait Powf {
fn powf(self, x: Self) -> Self;
}
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.pow.v2f32"]
fn powf_v2f32(x: f32x2, y: f32x2) -> f32x2;
#[link_name = "llvm.pow.v4f32"]
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/sin.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/sin.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/sin.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/sin.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `sin`
#![allow(unused)]
// FIXME 64-bit 1 elem vectors sin
use crate::*;
-crate trait Sin {
+pub(crate) trait Sin {
fn sin(self) -> Self;
}
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.sin.v2f32"]
fn sin_v2f32(x: f32x2) -> f32x2;
#[link_name = "llvm.sin.v4f32"]
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/sin_cos_pi.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/sin_cos_pi.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/sin_cos_pi.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/sin_cos_pi.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `sin_cos`
#![allow(unused)]
// FIXME 64-bit 1 elem vectors sin_cos
use crate::*;
-crate trait SinCosPi: Sized {
+pub(crate) trait SinCosPi: Sized {
type Output;
fn sin_cos_pi(self) -> Self::Output;
}
macro_rules! impl_def {
($vid:ident, $PI:path) => {
impl SinCosPi for $vid {
type Output = (Self, Self);
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/sin_pi.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/sin_pi.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/sin_pi.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/sin_pi.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `sin_pi`
#![allow(unused)]
// FIXME 64-bit 1 elem vectors sin_pi
use crate::*;
-crate trait SinPi {
+pub(crate) trait SinPi {
fn sin_pi(self) -> Self;
}
gen_unary_impl_table!(SinPi, sin_pi);
macro_rules! impl_def {
($vid:ident, $PI:path) => {
impl SinPi for $vid {
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/sqrt.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/sqrt.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/sqrt.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/sqrt.rs
@@ -1,16 +1,16 @@
//! Vertical floating-point `sqrt`
#![allow(unused)]
// FIXME 64-bit 1 elem vectors sqrt
use crate::*;
-crate trait Sqrt {
+pub(crate) trait Sqrt {
fn sqrt(self) -> Self;
}
#[allow(improper_ctypes)]
extern "C" {
#[link_name = "llvm.sqrt.v2f32"]
fn sqrt_v2f32(x: f32x2) -> f32x2;
#[link_name = "llvm.sqrt.v4f32"]
diff --git a/third_party/rust/packed_simd_2/src/codegen/math/float/sqrte.rs b/third_party/rust/packed_simd_2/src/codegen/math/float/sqrte.rs
--- a/third_party/rust/packed_simd_2/src/codegen/math/float/sqrte.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/math/float/sqrte.rs
@@ -1,17 +1,17 @@
//! Vertical floating-point `sqrt`
#![allow(unused)]
// FIXME 64-bit 1 elem vectors sqrte
use crate::llvm::simd_fsqrt;
use crate::*;
-crate trait Sqrte {
+pub(crate) trait Sqrte {
fn sqrte(self) -> Self;
}
gen_unary_impl_table!(Sqrte, sqrte);
cfg_if! {
if #[cfg(all(target_arch = "x86_64", feature = "sleef-sys"))] {
use sleef_sys::*;
diff --git a/third_party/rust/packed_simd_2/src/codegen/pointer_sized_int.rs b/third_party/rust/packed_simd_2/src/codegen/pointer_sized_int.rs
--- a/third_party/rust/packed_simd_2/src/codegen/pointer_sized_int.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/pointer_sized_int.rs
@@ -1,28 +1,28 @@
//! Provides `isize` and `usize`
use cfg_if::cfg_if;
cfg_if! {
if #[cfg(target_pointer_width = "8")] {
- crate type isize_ = i8;
- crate type usize_ = u8;
+ pub(crate) type isize_ = i8;
+ pub(crate) type usize_ = u8;
} else if #[cfg(target_pointer_width = "16")] {
- crate type isize_ = i16;
- crate type usize_ = u16;
+ pub(crate) type isize_ = i16;
+ pub(crate) type usize_ = u16;
} else if #[cfg(target_pointer_width = "32")] {
- crate type isize_ = i32;
- crate type usize_ = u32;
+ pub(crate) type isize_ = i32;
+ pub(crate) type usize_ = u32;
} else if #[cfg(target_pointer_width = "64")] {
- crate type isize_ = i64;
- crate type usize_ = u64;
+ pub(crate) type isize_ = i64;
+ pub(crate) type usize_ = u64;
} else if #[cfg(target_pointer_width = "64")] {
- crate type isize_ = i64;
- crate type usize_ = u64;
+ pub(crate) type isize_ = i64;
+ pub(crate) type usize_ = u64;
} else if #[cfg(target_pointer_width = "128")] {
- crate type isize_ = i128;
- crate type usize_ = u128;
+ pub(crate) type isize_ = i128;
+ pub(crate) type usize_ = u128;
} else {
compile_error!("unsupported target_pointer_width");
}
}
diff --git a/third_party/rust/packed_simd_2/src/codegen/reductions.rs b/third_party/rust/packed_simd_2/src/codegen/reductions.rs
--- a/third_party/rust/packed_simd_2/src/codegen/reductions.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/reductions.rs
@@ -1,1 +1,1 @@
-crate mod mask;
+pub(crate) mod mask;
diff --git a/third_party/rust/packed_simd_2/src/codegen/reductions/mask.rs b/third_party/rust/packed_simd_2/src/codegen/reductions/mask.rs
--- a/third_party/rust/packed_simd_2/src/codegen/reductions/mask.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/reductions/mask.rs
@@ -2,21 +2,21 @@
//!
//! Works around [LLVM bug 36702].
//!
//! [LLVM bug 36702]: https://bugs.llvm.org/show_bug.cgi?id=36702
#![allow(unused_macros)]
use crate::*;
-crate trait All: crate::marker::Sized {
+pub(crate) trait All: crate::marker::Sized {
unsafe fn all(self) -> bool;
}
-crate trait Any: crate::marker::Sized {
+pub(crate) trait Any: crate::marker::Sized {
unsafe fn any(self) -> bool;
}
#[macro_use]
mod fallback_impl;
cfg_if! {
if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] {
diff --git a/third_party/rust/packed_simd_2/src/codegen/swap_bytes.rs b/third_party/rust/packed_simd_2/src/codegen/swap_bytes.rs
--- a/third_party/rust/packed_simd_2/src/codegen/swap_bytes.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/swap_bytes.rs
@@ -1,26 +1,26 @@
//! Horizontal swap bytes reductions.
// FIXME: investigate using `llvm.bswap`
// https://github.com/rust-lang-nursery/packed_simd/issues/19
use crate::*;
-crate trait SwapBytes {
+pub(crate) trait SwapBytes {
fn swap_bytes(self) -> Self;
}
macro_rules! impl_swap_bytes {
(v16: $($id:ident,)+) => {
$(
impl SwapBytes for $id {
#[inline]
fn swap_bytes(self) -> Self {
- unsafe { shuffle!(self, [1, 0]) }
+ shuffle!(self, [1, 0])
}
}
)+
};
(v32: $($id:ident,)+) => {
$(
impl SwapBytes for $id {
#[inline]
diff --git a/third_party/rust/packed_simd_2/src/codegen/vPtr.rs b/third_party/rust/packed_simd_2/src/codegen/vPtr.rs
--- a/third_party/rust/packed_simd_2/src/codegen/vPtr.rs
+++ b/third_party/rust/packed_simd_2/src/codegen/vPtr.rs
@@ -1,16 +1,16 @@
//! Pointer vector types
macro_rules! impl_simd_ptr {
([$ptr_ty:ty; $elem_count:expr]: $tuple_id:ident | $ty:ident
| $($tys:ty),*) => {
#[derive(Copy, Clone)]
#[repr(simd)]
- pub struct $tuple_id<$ty>($(crate $tys),*);
+ pub struct $tuple_id<$ty>($(pub(crate) $tys),*);
//^^^^^^^ leaked through SimdArray
impl<$ty> crate::sealed::Seal for [$ptr_ty; $elem_count] {}
impl<$ty> crate::sealed::SimdArray for [$ptr_ty; $elem_count] {
type Tuple = $tuple_id<$ptr_ty>;
type T = $ptr_ty;
const N: usize = $elem_count;
type NT = [u32; $elem_count];
diff --git a/third_party/rust/packed_simd_2/src/lib.rs b/third_party/rust/packed_simd_2/src/lib.rs
--- a/third_party/rust/packed_simd_2/src/lib.rs
+++ b/third_party/rust/packed_simd_2/src/lib.rs
@@ -212,24 +212,23 @@
//! guide](https://rust-lang-nursery.github.io/packed_simd/perf-guide/)
#![feature(
adt_const_params,
repr_simd,
rustc_attrs,
platform_intrinsics,
stdsimd,
- aarch64_target_feature,
arm_target_feature,
link_llvm_intrinsics,
core_intrinsics,
stmt_expr_attributes,
- crate_visibility_modifier,
custom_inner_attributes,
)]
+#![cfg_attr(aarch64_target_feature, feature(aarch64_target_feature))]
#![allow(non_camel_case_types, non_snake_case,
// FIXME: these types are unsound in C FFI already
// See https://github.com/rust-lang/rust/issues/53346
improper_ctypes_definitions,
incomplete_features,
clippy::cast_possible_truncation,
clippy::cast_lossless,
clippy::cast_possible_wrap,
@@ -339,11 +338,11 @@ pub use self::api::into_bits::*;
// Re-export the shuffle intrinsics required by the `shuffle!` macro.
#[doc(hidden)]
pub use self::codegen::llvm::{
__shuffle_vector16, __shuffle_vector2, __shuffle_vector32, __shuffle_vector4, __shuffle_vector64,
__shuffle_vector8,
};
-crate mod llvm {
- crate use crate::codegen::llvm::*;
+pub(crate) mod llvm {
+ pub(crate) use crate::codegen::llvm::*;
}
diff --git a/third_party/rust/packed_simd_2/src/testing.rs b/third_party/rust/packed_simd_2/src/testing.rs
--- a/third_party/rust/packed_simd_2/src/testing.rs
+++ b/third_party/rust/packed_simd_2/src/testing.rs
@@ -1,8 +1,8 @@
//! Testing macros and other utilities.
#[macro_use]
mod macros;
#[cfg(test)]
#[macro_use]
-crate mod utils;
+pub(crate) mod utils;