Skip to content

Commit

Permalink
Pin nightly version
Browse files Browse the repository at this point in the history
The build is currently failing:

<https://github.com/image-rs/jpeg-decoder/runs/5618199478>

1. `aarch64_target_feature` was stabilized in rust-lang/rust#90621
2. `neon`/`fp` must be activated together, which is not yet the case for
   some intrinsics in `std`. See rust-lang/rust#91608 and
   rust-lang/rust#95044.

Once either of the above solutions lands we can remove
`aarch64_target_feature` and unpin nightly again.
  • Loading branch information
felipe-devexpert committed Mar 25, 2022
1 parent 94f2f46 commit b435275
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 5 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:

strategy:
matrix:
rust: [nightly]
rust: [nightly-2022-03-24]
features: ["", "rayon", "nightly_aarch64_neon"]

steps:
Expand Down
4 changes: 0 additions & 4 deletions src/arch/neon.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ use core::arch::aarch64::*;

#[cfg(all(feature = "nightly_aarch64_neon", target_arch = "aarch64"))]
#[target_feature(enable = "neon")]
#[target_feature(enable = "fp")]
unsafe fn idct8(data: &mut [int16x8_t; 8]) {
// The fixed-point constants here are obtained by taking the fractional part of the constants
// from the non-SIMD implementation and scaling them up by 1<<15. This is because
Expand Down Expand Up @@ -84,7 +83,6 @@ unsafe fn idct8(data: &mut [int16x8_t; 8]) {

#[cfg(all(feature = "nightly_aarch64_neon", target_arch = "aarch64"))]
#[target_feature(enable = "neon")]
#[target_feature(enable = "fp")]
unsafe fn transpose8(data: &mut [int16x8_t; 8]) {
// Use NEON's 2x2 matrix transposes (vtrn) to do the transposition in each 4x4 block, then
// combine the 4x4 blocks.
Expand Down Expand Up @@ -112,7 +110,6 @@ unsafe fn transpose8(data: &mut [int16x8_t; 8]) {

#[cfg(all(feature = "nightly_aarch64_neon", target_arch = "aarch64"))]
#[target_feature(enable = "neon")]
#[target_feature(enable = "fp")]
pub unsafe fn dequantize_and_idct_block_8x8(
coefficients: &[i16; 64],
quantization_table: &[u16; 64],
Expand Down Expand Up @@ -171,7 +168,6 @@ pub unsafe fn dequantize_and_idct_block_8x8(

#[cfg(all(feature = "nightly_aarch64_neon", target_arch = "aarch64"))]
#[target_feature(enable = "neon")]
#[target_feature(enable = "fp")]
pub unsafe fn color_convert_line_ycbcr(y: &[u8], cb: &[u8], cr: &[u8], output: &mut [u8]) -> usize {
assert!(output.len() % 3 == 0);
let num = output.len() / 3;
Expand Down

0 comments on commit b435275

Please sign in to comment.