Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 25 additions & 1 deletion .github/workflows/ci-testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,25 @@ jobs:
build_type: RelWithAsserts
backend: omp
device_type: HOST
- os: ubuntu-24.04-arm
cxx_compiler: g++
std: 17
build_type: release
backend: omp
device_type: HOST
- os: ubuntu-24.04-arm
cxx_compiler: g++
std: 17
build_type: release
backend: tbb
device_type: HOST
- os: ubuntu-24.04-arm
cxx_compiler: g++
std: 17
build_type: serial
backend: serial
device_type: HOST

steps:
- uses: actions/checkout@v4
- name: Set up Intel APT repository
Expand All @@ -159,7 +178,12 @@ jobs:
- name: Install Intel® oneAPI Threading Building Blocks
if: (matrix.backend == 'tbb' || matrix.backend == 'dpcpp')
run: |
sudo apt-get install intel-oneapi-tbb-devel -y
if [[ "${{ matrix.os }}" =~ "-arm" ]]; then
# oneAPI TBB package is not available for ARM architecture
sudo apt-get install libtbb-dev -y
else
sudo apt-get install intel-oneapi-tbb-devel -y
fi
- name: Install Intel® oneAPI DPC++/C++ Compiler
if: (matrix.device_type != 'FPGA_EMU' &&
(matrix.cxx_compiler == 'icpx' ||
Expand Down
14 changes: 12 additions & 2 deletions test/parallel_api/experimental/for_loop.pass.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -325,11 +325,21 @@ test()
test_for_loop_strided<T>();
}

// TODO: investigate the segmentation fault on ARM architectures
#if defined(__arm__) || defined(_M_ARM) || defined(__aarch64__) || defined(_M_ARM64)
# define _PSTL_TEST_FOR_LOOP_BROKEN 1
#else
# define _PSTL_TEST_FOR_LOOP_BROKEN 0
#endif

std::int32_t
main()
{
bool bProcessed = false;
#if !_PSTL_TEST_FOR_LOOP_BROKEN
test<std::int32_t>();
test<float64_t>();

return done();
bProcessed = true;
#endif
return done(bProcessed);
}
Loading