root/arch/arm64/include/asm/neon-intrinsics.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  * Copyright (C) 2018 Linaro, Ltd. <ard.biesheuvel@linaro.org>
   4  */
   5 
   6 #ifndef __ASM_NEON_INTRINSICS_H
   7 #define __ASM_NEON_INTRINSICS_H
   8 
   9 #include <asm-generic/int-ll64.h>
  10 
  11 /*
  12  * In the kernel, u64/s64 are [un]signed long long, not [un]signed long.
  13  * So by redefining these macros to the former, we can force gcc-stdint.h
  14  * to define uint64_t / in64_t in a compatible manner.
  15  */
  16 
  17 #ifdef __INT64_TYPE__
  18 #undef __INT64_TYPE__
  19 #define __INT64_TYPE__          long long
  20 #endif
  21 
  22 #ifdef __UINT64_TYPE__
  23 #undef __UINT64_TYPE__
  24 #define __UINT64_TYPE__         unsigned long long
  25 #endif
  26 
  27 /*
  28  * genksyms chokes on the ARM NEON instrinsics system header, but we
  29  * don't export anything it defines anyway, so just disregard when
  30  * genksyms execute.
  31  */
  32 #ifndef __GENKSYMS__
  33 #include <arm_neon.h>
  34 #endif
  35 
  36 #ifdef CONFIG_CC_IS_CLANG
  37 #pragma clang diagnostic ignored "-Wincompatible-pointer-types"
  38 #endif
  39 
  40 #endif /* __ASM_NEON_INTRINSICS_H */

/* [<][>][^][v][top][bottom][index][help] */