xref: /openbmc/linux/arch/arm64/include/asm/neon-intrinsics.h (revision 0738c8b5915c7eaf1e6007b441008e8f3b460443)
121e28547SJackie Liu /*
221e28547SJackie Liu  * Copyright (C) 2018 Linaro, Ltd. <ard.biesheuvel@linaro.org>
321e28547SJackie Liu  *
421e28547SJackie Liu  * This program is free software; you can redistribute it and/or modify
521e28547SJackie Liu  * it under the terms of the GNU General Public License version 2 as
621e28547SJackie Liu  * published by the Free Software Foundation.
721e28547SJackie Liu  */
821e28547SJackie Liu 
921e28547SJackie Liu #ifndef __ASM_NEON_INTRINSICS_H
1021e28547SJackie Liu #define __ASM_NEON_INTRINSICS_H
1121e28547SJackie Liu 
1221e28547SJackie Liu #include <asm-generic/int-ll64.h>
1321e28547SJackie Liu 
1421e28547SJackie Liu /*
1521e28547SJackie Liu  * In the kernel, u64/s64 are [un]signed long long, not [un]signed long.
1621e28547SJackie Liu  * So by redefining these macros to the former, we can force gcc-stdint.h
1721e28547SJackie Liu  * to define uint64_t / in64_t in a compatible manner.
1821e28547SJackie Liu  */
1921e28547SJackie Liu 
2021e28547SJackie Liu #ifdef __INT64_TYPE__
2121e28547SJackie Liu #undef __INT64_TYPE__
2221e28547SJackie Liu #define __INT64_TYPE__		long long
2321e28547SJackie Liu #endif
2421e28547SJackie Liu 
2521e28547SJackie Liu #ifdef __UINT64_TYPE__
2621e28547SJackie Liu #undef __UINT64_TYPE__
2721e28547SJackie Liu #define __UINT64_TYPE__		unsigned long long
2821e28547SJackie Liu #endif
2921e28547SJackie Liu 
3021e28547SJackie Liu /*
3121e28547SJackie Liu  * genksyms chokes on the ARM NEON instrinsics system header, but we
3221e28547SJackie Liu  * don't export anything it defines anyway, so just disregard when
3321e28547SJackie Liu  * genksyms execute.
3421e28547SJackie Liu  */
3521e28547SJackie Liu #ifndef __GENKSYMS__
3621e28547SJackie Liu #include <arm_neon.h>
3721e28547SJackie Liu #endif
3821e28547SJackie Liu 
39*0738c8b5SNathan Chancellor #ifdef CONFIG_CC_IS_CLANG
40*0738c8b5SNathan Chancellor #pragma clang diagnostic ignored "-Wincompatible-pointer-types"
41*0738c8b5SNathan Chancellor #endif
42*0738c8b5SNathan Chancellor 
4321e28547SJackie Liu #endif /* __ASM_NEON_INTRINSICS_H */
44