https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103641
--- Comment #9 from Martin Liška <marxin at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #8) > (In reply to Martin Liška from comment #6) > > How does one enable NEON? What -mcpu -mtune do you use? > > NEON is enabled by default :). I have a cross compiler that can't consume the provided pre-processed source file: $ marxin@marxinbox:~/Programming/testcases> aarch64-suse-linux-gcc-11 -v Using built-in specs. COLLECT_GCC=aarch64-suse-linux-gcc-11 COLLECT_LTO_WRAPPER=/usr/lib64/gcc/aarch64-suse-linux/11/lto-wrapper Target: aarch64-suse-linux Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++ --enable-checking=release --disable-werror --with-gxx-include-dir=/usr/include/c++/11 --enable-ssp --disable-libssp --disable-libvtv --enable-cet=auto --disable-libcc1 --disable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/usr/aarch64-suse-linux/sys-root/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-11 --program-prefix=aarch64-suse-linux- --target=aarch64-suse-linux --disable-nls --with-sysroot=/usr/aarch64-suse-linux/sys-root --with-build-sysroot=/usr/aarch64-suse-linux/sys-root --with-build-time-tools=/usr/aarch64-suse-linux/bin --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --disable-libsanitizer --build=x86_64-suse-linux --host=x86_64-suse-linux Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 11.2.1 20211124 [revision 7510c23c1ec53aa4a62705f0384079661342ff7b] (SUSE Linux) $ aarch64-suse-linux-gcc-11 xxhash.i -c -fmax-errors=5 In file included from xxhash.h:2710, from xxhash.c:43: /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h:33:9: error: unknown '#pragma GCC aarch64' option 'arm_neon.h' In file included from xxhash.h:2710, from xxhash.c:43: /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h: In function 'vaddl_u8': /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h:401:10: error: incompatible types when returning type 'int' but 'uint16x8_t' was expected /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h: In function 'vaddl_u16': /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h:408:10: error: incompatible types when returning type 'int' but 'uint32x4_t' was expected /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h: In function 'vaddl_u32': /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h:415:10: error: incompatible types when returning type 'int' but 'uint64x2_t' was expected /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h: In function 'vaddl_high_u8': /home/ubuntu/upstream-gcc/lib/gcc/aarch64-unknown-linux-gnu/12.0.0/include/arm_neon.h:443:10: error: incompatible types when returning type 'int' but 'uint16x8_t' was expected That's why I'm asking.