Skip to content
Snippets Groups Projects
Commit 889341a8 authored by Victor Do Nascimento's avatar Victor Do Nascimento
Browse files

aarch64: arm_neon.h - Fix -Wincompatible-pointer-types errors

In the Linux kernel, u64/s64 are [un]signed long long, not [un]signed
long.  This means that when the `arm_neon.h' header is used by the
kernel, any use of the `uint64_t' / `in64_t' types needs to be
correctly cast to the correct `__builtin_aarch64_simd_di' /
`__builtin_aarch64_simd_df' types when calling the relevant ACLE
builtins.

This patch adds the necessary fixes to ensure that `vstl1_*' and
`vldap1_*' intrinsics are correctly defined for use by the kernel.

gcc/ChangeLog:

	* config/aarch64/arm_neon.h (vldap1_lane_u64): Add
	`const' to `__builtin_aarch64_simd_di *' cast.
	(vldap1q_lane_u64): Likewise.
	(vldap1_lane_s64): Cast __src to `const __builtin_aarch64_simd_di *'.
	(vldap1q_lane_s64): Likewise.
	(vldap1_lane_f64): Cast __src to `const __builtin_aarch64_simd_df *'.
	(vldap1q_lane_f64): Cast __src to `const __builtin_aarch64_simd_df *'.
	(vldap1_lane_p64): Add `const' to `__builtin_aarch64_simd_di *' cast.
	(vldap1q_lane_p64): Add `const' to `__builtin_aarch64_simd_di *' cast.
	(vstl1_lane_u64): remove stray `const'.
	(vstl1_lane_s64): Cast __src to `__builtin_aarch64_simd_di *'.
	(vstl1q_lane_s64): Likewise.
	(vstl1_lane_f64): Cast __src to `const __builtin_aarch64_simd_df *'.
	(vstl1q_lane_f64): Likewise.
parent f9b4dbb8
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment