[aarch64] refactor AArch64 intrinsics into its own architecture module (#162)

This commit is contained in:
gnzlbg 2017-10-29 17:37:43 +01:00 committed by Alex Crichton
parent 7f35e50563
commit d6aefaabea
6 changed files with 31 additions and 21 deletions

View file

@ -0,0 +1,17 @@
//! AArch64 intrinsics.
//!
//! The reference for NEON is [ARM's NEON Intrinsics Reference][arm_ref]. The
//! [ARM's NEON Intrinsics Online Database][arm_dat] is also useful.
//!
//! [arm_ref]:
//! http://infocenter.arm.com/help/topic/com.arm.doc.
//! ihi0073a/IHI0073A_arm_neon_intrinsics_ref.pdf
//! [arm_dat]: https://developer.arm.com/technologies/neon/intrinsics
mod v8;
pub use self::v8::*;
#[cfg(target_feature = "neon")]
mod neon;
#[cfg(target_feature = "neon")]
pub use self::neon::*;

View file

@ -5,8 +5,6 @@
//! [armv8]: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.
//! ddi0487a.k_10775/index.html
pub use super::v7::*;
#[cfg(test)]
use stdsimd_test::assert_instr;
@ -59,7 +57,7 @@ pub unsafe fn _cls_u64(x: u64) -> u64 {
#[cfg(test)]
mod tests {
use arm::v8;
use aarch64::v8;
#[test]
fn _rev_u64() {

View file

@ -8,23 +8,13 @@
//! ihi0073a/IHI0073A_arm_neon_intrinsics_ref.pdf
//! [arm_dat]: https://developer.arm.com/technologies/neon/intrinsics
pub use self::v6::*;
pub use self::v7::*;
#[cfg(target_arch = "aarch64")]
pub use self::v8::*;
#[cfg(target_feature = "neon")]
pub use self::v7_neon::*;
#[cfg(all(target_arch = "aarch64", target_feature = "neon"))]
pub use self::v8_neon::*;
mod v6;
mod v7;
#[cfg(target_feature = "neon")]
mod v7_neon;
pub use self::v6::*;
#[cfg(target_arch = "aarch64")]
mod v8;
#[cfg(all(target_arch = "aarch64", target_feature = "neon"))]
mod v8_neon;
mod v7;
pub use self::v7::*;
#[cfg(target_feature = "neon")]
mod neon;
#[cfg(target_feature = "neon")]
pub use self::neon::*;

View file

@ -144,6 +144,9 @@ pub mod vendor {
#[cfg(any(target_arch = "arm", target_arch = "aarch64"))]
pub use arm::*;
#[cfg(target_arch = "aarch64")]
pub use aarch64::*;
}
#[macro_use]
@ -160,3 +163,5 @@ mod x86;
#[cfg(any(target_arch = "arm", target_arch = "aarch64"))]
mod arm;
#[cfg(target_arch = "aarch64")]
mod aarch64;