On Fri, Mar 18, 2016 at 11:04:49AM +0100, Thomas Monjalon wrote: > 2016-03-18 10:52, Tomasz Kulasek: > > +#if !defined(NO_HASH_MULTI_LOOKUP) && defined(__ARM_NEON) > > I think we should use CONFIG_RTE_ARCH_ARM_NEON here. > Any ARM maintainer to confirm?
__ARM_NEON should work existing GCC, but it is better to use RTE_MACHINE_CPUFLAG_NEON as -it has been generated by probing the compiler capabilities. -it's future-proof solution to support clang or other gcc versions in future ? [master]laptop [dpdk-master] $ aarch64-thunderx-linux-gnu-gcc -dM -E - < /dev/null | grep NEON #define __ARM_NEON_FP 12 #define __ARM_NEON 1 make output aarch64-thunderx-linux-gnu-gcc -Wp,-MD,./.eal.o.d.tmp -pthread -march=armv8-a+crc -mcpu=thunderx -DRTE_MACHINE_CPUFLAG_NEON -DRTE_MACHINE_CPUFLAG_CRC32 -DRTE_COMPILE_TIME_CPUFLAGS=RTE_CPUFLAG_NEON,RTE_CPUFLAG_CRC32 -I/export/dpdk-master/build/include -include /export/dpdk-master/build/include/rte_config.h -I/export/dpdk-master/lib/librte_eal/linuxapp/eal/include -I/export/dpdk-master/lib/librte_eal/common -I/export/dpdk-master/lib/librte_eal/common/include -I/export/dpdk-master/lib/librte_ring -I/export/dpdk-master/lib/librte_mempool -I/export/dpdk-master/lib/librte_ivshmem -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wold-style-definition -Wpointer-arith -Wcast-align -Wnested-externs -Wcast-qual -Wformat-nonliteral -Wformat-security -Wundef -Wwrite-strings -Werror -O3 -D_GNU_SOURCE -o eal.o -c /export/dpdk-master/lib/librte_eal/linuxapp/eal/eal.c Jerin > > Note that there is already another occurence of this compiler flag: > examples/l3fwd/l3fwd_em.c:#elif defined(__ARM_NEON)