diff --git a/benches/field_arithmetic.rs b/benches/field_arithmetic.rs index 2fb4a24b..8308e427 100644 --- a/benches/field_arithmetic.rs +++ b/benches/field_arithmetic.rs @@ -1,5 +1,3 @@ -#![feature(destructuring_assignment)] - use criterion::{criterion_group, criterion_main, BatchSize, Criterion}; use plonky2::field::extension_field::quartic::QuarticExtension; use plonky2::field::field_types::Field; diff --git a/benches/hashing.rs b/benches/hashing.rs index c229972e..583c36b6 100644 --- a/benches/hashing.rs +++ b/benches/hashing.rs @@ -1,4 +1,3 @@ -#![feature(destructuring_assignment)] #![feature(generic_const_exprs)] use criterion::{criterion_group, criterion_main, BatchSize, Criterion}; diff --git a/src/field/goldilocks_field.rs b/src/field/goldilocks_field.rs index d963fb9e..9e93d1f1 100644 --- a/src/field/goldilocks_field.rs +++ b/src/field/goldilocks_field.rs @@ -323,6 +323,7 @@ impl RichField for GoldilocksField {} #[inline(always)] #[cfg(target_arch = "x86_64")] unsafe fn add_no_canonicalize_trashing_input(x: u64, y: u64) -> u64 { + use std::arch::asm; let res_wrapped: u64; let adjustment: u64; asm!( @@ -363,6 +364,7 @@ unsafe fn add_no_canonicalize_trashing_input(x: u64, y: u64) -> u64 { #[inline(always)] #[cfg(target_arch = "x86_64")] unsafe fn sub_no_canonicalize_trashing_input(x: u64, y: u64) -> u64 { + use std::arch::asm; let res_wrapped: u64; let adjustment: u64; asm!( diff --git a/src/hash/arch/aarch64/poseidon_goldilocks_neon.rs b/src/hash/arch/aarch64/poseidon_goldilocks_neon.rs index 0aaa13a6..6437818b 100644 --- a/src/hash/arch/aarch64/poseidon_goldilocks_neon.rs +++ b/src/hash/arch/aarch64/poseidon_goldilocks_neon.rs @@ -1,6 +1,7 @@ #![allow(clippy::assertions_on_constants)] use std::arch::aarch64::*; +use std::arch::asm; use static_assertions::const_assert; use unroll::unroll_for_loops; diff --git a/src/lib.rs b/src/lib.rs index b0158d7a..291e6422 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -4,9 +4,7 @@ #![allow(clippy::too_many_arguments)] #![allow(clippy::len_without_is_empty)] #![allow(clippy::needless_range_loop)] -#![feature(asm)] #![feature(asm_sym)] -#![feature(destructuring_assignment)] #![feature(generic_const_exprs)] #![feature(specialization)] #![feature(stdsimd)] diff --git a/src/util/mod.rs b/src/util/mod.rs index fca6b728..3f7c5dd1 100644 --- a/src/util/mod.rs +++ b/src/util/mod.rs @@ -1,4 +1,5 @@ -use core::hint::unreachable_unchecked; +use std::arch::asm; +use std::hint::unreachable_unchecked; use crate::field::field_types::Field; use crate::polynomial::PolynomialValues;