Hi Aaron, > > This makes the tests pass, and also ensures that on platforms where the > testing is supported, we can properly test the implementation specific > code. One edge case is when we run on x86_64 systems that don't support > AVX2, but where the compiler can generate such instructions. That could > be an enhancement in the future, but for now at least the tests will > pass. > > Signed-off-by: Aaron Conole <acon...@redhat.com> > --- > app/test/test_acl.c | 62 +++++++++++++-------------------- > lib/librte_acl/Makefile | 1 + > lib/librte_acl/acl_run_notsup.c | 46 ++++++++++++++++++++++++ > lib/librte_acl/meson.build | 4 +-- > 4 files changed, 73 insertions(+), 40 deletions(-) > create mode 100644 lib/librte_acl/acl_run_notsup.c > > diff --git a/app/test/test_acl.c b/app/test/test_acl.c > index b1f75d1bc..c44faa251 100644 > --- a/app/test/test_acl.c > +++ b/app/test/test_acl.c > @@ -408,6 +408,9 @@ test_classify(void) > return -1; > } > > + /* Always use the scalar testing for now. */ > + rte_acl_set_ctx_classify(acx, RTE_ACL_CLASSIFY_SCALAR); > + > ret = 0; > for (i = 0; i != TEST_CLASSIFY_ITER; i++) { > > @@ -547,6 +550,7 @@ test_build_ports_range(void) > for (i = 0; i != RTE_DIM(test_data); i++) > data[i] = (uint8_t *)&test_data[i]; > > + rte_acl_set_ctx_classify(acx, RTE_ACL_CLASSIFY_SCALAR); > for (i = 0; i != RTE_DIM(test_rules); i++) { > rte_acl_reset(acx); > ret = test_classify_buid(acx, test_rules, i + 1); > @@ -911,6 +915,8 @@ test_convert_rules(const char *desc, > return -1; > } > > + rte_acl_set_ctx_classify(acx, RTE_ACL_CLASSIFY_SCALAR); > +
As I understand here and above, on x86 you replaced default algo (SSE, AVX2) with scalar one, right? That looks like reduction of test coverage for x86. Konstantin