Open malaterre opened 1 week ago
I must admit I fail to understand the gdb backtrace... Anyway here it goes:
$ gdb --args obj-*/tests/sort_test "--gtest_filter=SortTestGroup/SortTest.TestAllFloatInf/EMU128" [...] [ RUN ] SortTestGroup/SortTest.TestAllFloatInf/EMU128 Abort at vqsort_f64a.cc:35: Assert 0 [...] (gdb) list 30 #if HWY_HAVE_FLOAT64 31 return VQSortStatic(keys, num, SortAscending()); 32 #else 33 (void)keys; 34 (void)num; 35 HWY_ASSERT(0); 36 #endif 37 } 38 39 void PartialSortF64Asc(double* HWY_RESTRICT keys, const size_t num, (gdb) up #7 hwy::VQSort (keys=keys@entry=0x23, n=n@entry=6) at ./hwy/contrib/sort/vqsort_f64a.cc:76 76 HWY_DYNAMIC_DISPATCH(SortF64Asc)(keys, n); (gdb) #8 0x004676f0 in hwy::N_EMU128::(anonymous namespace)::TestFloatInf::operator()<double, hwy::N_EMU128::Simd<double, 2u, 0> >(double, hwy::N_EMU128::Simd<double, 2u, 0>) [clone .constprop.0] (d=..., this=<optimized out>) at ./hwy/contrib/sort/sort_test.cc:124 124 VQSort(in.get(), num, SortAscending()); (gdb) #9 0x004082dc in hwy::N_EMU128::detail::ForeachCappedR<double, 2, 1, hwy::N_EMU128::(anonymous namespace)::TestFloatInf, 0>::Do (min_lanes=1, max_lanes=2) at ./hwy/tests/test_util-inl.h:251 251 static void Do(size_t min_lanes, size_t max_lanes) { (gdb) #10 hwy::N_EMU128::ForExtendableVectors<hwy::N_EMU128::(anonymous namespace)::TestFloatInf, 0>::operator()<double> (this=<optimized out>) at ./hwy/tests/test_util-inl.h:405 405 detail::ForeachCappedR<T, kMul, kMinArg, Test, -kPow2>::Do(1, max_lanes); (gdb) up #11 hwy::N_EMU128::ForPartialVectors<hwy::N_EMU128::(anonymous namespace)::TestFloatInf>::operator()<double> (t=0, this=<optimized out>) at ./hwy/tests/test_util-inl.h:629 629 ForExtendableVectors<Test, 0>()(t); (gdb) up #12 hwy::N_EMU128::ForFloat64TypesDynamic<hwy::N_EMU128::ForPartialVectors<hwy::N_EMU128::(anonymous namespace)::TestFloatInf> > (func=...) at ./hwy/tests/test_util-inl.h:734 734 func(double()); (gdb) list - 729 730 template <class Func> 731 void ForFloat64TypesDynamic(const Func& func) { 732 #if HWY_HAVE_FLOAT64 733 if (hwy::HaveFloat64()) { 734 func(double()); 735 } 736 #else 737 (void)func; 738 #endif
System it Debian/armhf (which is a armv7/neon wo aes). Compiler is GCC-13/O3
ref:
I must admit I fail to understand the gdb backtrace... Anyway here it goes:
System it Debian/armhf (which is a armv7/neon wo aes). Compiler is GCC-13/O3
ref: