If compiled with SVE feature (e.g. "-march=armv8.2-a+sve'), the binary
could not run on non-SVE platform else it will encounter illegal
instruction [1].

This patch fixes it by add 'RTE_CPUFLAG_SVE' to compile_time_cpuflags,
so that rte_cpu_is_supported() will print meaningful log under above
situation.

[1] http://mails.dpdk.org/archives/dev/2021-May/209124.html

Signed-off-by: Chengwen Feng <fengcheng...@huawei.com>
---
 config/arm/meson.build | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/config/arm/meson.build b/config/arm/meson.build
index e83a56e..9b147c0 100644
--- a/config/arm/meson.build
+++ b/config/arm/meson.build
@@ -480,6 +480,10 @@ if (cc.get_define('__ARM_NEON', args: machine_args) != '' 
or
     compile_time_cpuflags += ['RTE_CPUFLAG_NEON']
 endif
 
+if cc.get_define('__ARM_FEATURE_SVE', args: machine_args) != ''
+    compile_time_cpuflags += ['RTE_CPUFLAG_SVE']
+endif
+
 if cc.get_define('__ARM_FEATURE_CRC32', args: machine_args) != ''
     compile_time_cpuflags += ['RTE_CPUFLAG_CRC32']
 endif
-- 
2.8.1

Reply via email to