Skip to content

Commit ebb26dc

Browse files
WIP
1 parent 4e8638a commit ebb26dc

File tree

2 files changed

+3
-11
lines changed

2 files changed

+3
-11
lines changed

.github/workflows/cross-ppc.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
strategy:
1111
matrix:
1212
target:
13-
- { platform: 'ppc', dir: 'powerpc-linux-gnu', flags: '-maltivec -mvsx', full: 'OFF' }
13+
- { platform: 'ppc64', dir: 'powerpc64-linux-gnu', flags: '-maltivec -mvsx -mcpu=power8', full: 'OFF' }
1414
sys:
1515
- { compiler: 'gcc', version: '12' }
1616
steps:
@@ -39,5 +39,5 @@ jobs:
3939
run: cmake --build _build --verbose -j1
4040
- name: Testing xsimd
4141
run: |
42-
qemu-${{ matrix.target.platform }} -cpu 7457 -L /usr/${{ matrix.target.dir}}/ ./test/test_xsimd
42+
qemu-${{ matrix.target.platform }} -cpu power8 -L /usr/${{ matrix.target.dir}}/ ./test/test_xsimd
4343
working-directory: ${{ github.workspace }}/_build

include/xsimd/arch/xsimd_altivec.hpp

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -456,23 +456,15 @@ namespace xsimd
456456
return vec_perm(lo, hi, vec_lvsl(0, mem));
457457
}
458458

459-
#if 0
460459
// load_complex
461460
namespace detail
462461
{
463-
// Redefine these methods in the SSE-based archs if required
464462
template <class A>
465463
XSIMD_INLINE batch<std::complex<float>, A> load_complex(batch<float, A> const& hi, batch<float, A> const& lo, requires_arch<altivec>) noexcept
466464
{
467-
return { _mm_shuffle_ps(hi, lo, _MM_SHUFFLE(2, 0, 2, 0)), _mm_shuffle_ps(hi, lo, _MM_SHUFFLE(3, 1, 3, 1)) };
468-
}
469-
template <class A>
470-
XSIMD_INLINE batch<std::complex<double>, A> load_complex(batch<double, A> const& hi, batch<double, A> const& lo, requires_arch<altivec>) noexcept
471-
{
472-
return { _mm_shuffle_pd(hi, lo, _MM_SHUFFLE2(0, 0)), _mm_shuffle_pd(hi, lo, _MM_SHUFFLE2(1, 1)) };
465+
return { vec_mergee(hi.data, lo.data), vec_mergeo(hi.data, lo.data) };
473466
}
474467
}
475-
#endif
476468

477469
// le
478470
template <class A, class T, class = typename std::enable_if<std::is_scalar<T>::value, void>::type>

0 commit comments

Comments
 (0)