Skip to content

Commit

Permalink
Fix more issue with deinterleave
Browse files Browse the repository at this point in the history
  • Loading branch information
jfalcou committed Dec 5, 2022
1 parent 53f5c2f commit 123c0e2
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ jobs:
cmake --build . --target unit.arch.exe --config ${{ matrix.cfg.mode }} --parallel 2
cmake --build . --target unit.meta.exe --config ${{ matrix.cfg.mode }} --parallel 2
cmake --build . --target unit.internals.exe --config ${{ matrix.cfg.mode }} --parallel 2
cmake --build . --target unit.api.exe --config ${{ matrix.cfg.mode }} --parallel 2
cmake --build . --target unit.api.exe --config ${{ matrix.cfg.mode }}
- name: Running Tests
run: |
cd build
Expand Down
16 changes: 9 additions & 7 deletions test/unit/api/regular/deinterleave_groups.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -114,19 +114,21 @@ using less_test_types = eve::test::wides < tts::types< std::int8_t, std::uint16
TTS_CASE_TPL( "Check behavior of deinterleave on arithmetic data", less_test_types)
<typename T>(tts::type<T>)
{
constexpr std::ptrdiff_t max_fields_count = 5;
static constexpr std::ptrdiff_t max_fields_count = 5;

eve::detail::for_<1, 1, max_fields_count + 1>([](auto fields)
eve::detail::for_<1, 1, max_fields_count + 1>
( [&]<int Fields>(std::integral_constant<int, Fields>)
{
// maybe unsused for gcc bug
// maybe unused for gcc bug
static constexpr std::size_t max_group_size = (T::size() >= 64) ? 4 : T::size();
constexpr auto nn = std::countr_zero(max_group_size) + 1;
static constexpr auto nn = std::countr_zero(max_group_size) + 1;
static constexpr std::ptrdiff_t fields = Fields;
eve::detail::for_<0, 1, nn>
(
[&](auto group_size_log)
[&]<int Shift>(std::integral_constant<int, Shift>)
{
constexpr auto gs = 1 << group_size_log();
deinterleave_groups_test<gs, fields(), T>();
static constexpr auto gs = 1 << Shift;
deinterleave_groups_test<gs, fields, T>();
}
);
});
Expand Down

0 comments on commit 123c0e2

Please sign in to comment.