     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31

    //! 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::*;

    mod neon;
    pub use self::neon::*;

    mod crypto;
    pub use self::crypto::*;

    mod crc;
    pub use self::crc::*;

    pub use super::acle::*;

    #[cfg(test)]
    use stdarch_test::assert_instr;

    /// Generates the trap instruction `BRK 1`
    #[cfg_attr(test, assert_instr(brk))]
    #[inline]
    pub unsafe fn brk() -> ! {
        crate::intrinsics::abort()
    }