From 3e0efe286de4e539887a8698f7be9a1466dc8b1d Mon Sep 17 00:00:00 2001 From: SparrowLii Date: Fri, 10 Sep 2021 18:32:28 +0800 Subject: [PATCH] use read_unaligned in vld1_p64 --- crates/core_arch/src/aarch64/neon/mod.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/core_arch/src/aarch64/neon/mod.rs b/crates/core_arch/src/aarch64/neon/mod.rs index bfd2966ed7..0d4c77a737 100644 --- a/crates/core_arch/src/aarch64/neon/mod.rs +++ b/crates/core_arch/src/aarch64/neon/mod.rs @@ -624,7 +624,7 @@ pub unsafe fn vld1q_p16(ptr: *const p16) -> poly16x8_t { #[target_feature(enable = "neon,aes")] #[cfg_attr(test, assert_instr(ldr))] pub unsafe fn vld1_p64(ptr: *const p64) -> poly64x1_t { - transmute(u64x1::new(*ptr)) + read_unaligned(ptr.cast()) } /// Load multiple single-element structures to one, two, three, or four registers. @@ -632,7 +632,7 @@ pub unsafe fn vld1_p64(ptr: *const p64) -> poly64x1_t { #[target_feature(enable = "neon,aes")] #[cfg_attr(test, assert_instr(ldr))] pub unsafe fn vld1q_p64(ptr: *const p64) -> poly64x2_t { - transmute(u64x2::new(*ptr, *ptr.offset(1))) + read_unaligned(ptr.cast()) } /// Load multiple single-element structures to one, two, three, or four registers.