Module Name: src
Committed By: jakllsch
Date: Mon Sep 7 18:06:13 UTC 2020
Modified Files:
src/sys/crypto/aes/arch/arm: arm_neon.h
src/sys/crypto/chacha/arch/arm: arm_neon.h
Log Message:
Fix vgetq_lane_u32 for aarch64eb with GCC
Fixes NEON AES on aarch64eb
To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/sys/crypto/aes/arch/arm/arm_neon.h
cvs rdiff -u -r1.6 -r1.7 src/sys/crypto/chacha/arch/arm/arm_neon.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/crypto/aes/arch/arm/arm_neon.h
diff -u src/sys/crypto/aes/arch/arm/arm_neon.h:1.10 src/sys/crypto/aes/arch/arm/arm_neon.h:1.11
--- src/sys/crypto/aes/arch/arm/arm_neon.h:1.10 Sun Aug 9 02:49:38 2020
+++ src/sys/crypto/aes/arch/arm/arm_neon.h Mon Sep 7 18:06:13 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: arm_neon.h,v 1.10 2020/08/09 02:49:38 riastradh Exp $ */
+/* $NetBSD: arm_neon.h,v 1.11 2020/09/07 18:06:13 jakllsch Exp $ */
/*-
* Copyright (c) 2020 The NetBSD Foundation, Inc.
@@ -232,7 +232,7 @@ static __inline uint32_t
vgetq_lane_u32(uint32x4_t __v, uint8_t __i)
{
#ifdef __aarch64__
- return __v[__i];
+ return __v[__neon_laneq_index(__v,__i)];
#else
return (uint32_t)__builtin_neon_vget_laneuv4si((int32x4_t)__v, __i);
#endif
Index: src/sys/crypto/chacha/arch/arm/arm_neon.h
diff -u src/sys/crypto/chacha/arch/arm/arm_neon.h:1.6 src/sys/crypto/chacha/arch/arm/arm_neon.h:1.7
--- src/sys/crypto/chacha/arch/arm/arm_neon.h:1.6 Sun Aug 9 02:49:38 2020
+++ src/sys/crypto/chacha/arch/arm/arm_neon.h Mon Sep 7 18:06:13 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: arm_neon.h,v 1.6 2020/08/09 02:49:38 riastradh Exp $ */
+/* $NetBSD: arm_neon.h,v 1.7 2020/09/07 18:06:13 jakllsch Exp $ */
/*-
* Copyright (c) 2020 The NetBSD Foundation, Inc.
@@ -232,7 +232,7 @@ static __inline uint32_t
vgetq_lane_u32(uint32x4_t __v, uint8_t __i)
{
#ifdef __aarch64__
- return __v[__i];
+ return __v[__neon_laneq_index(__v, __i)];
#else
return (uint32_t)__builtin_neon_vget_laneuv4si((int32x4_t)__v, __i);
#endif