-
Notifications
You must be signed in to change notification settings - Fork 4k
Closed
Description
Describe the bug, including details regarding any error messages, version, and platform.
test-r-rstudio-r-base-4.1-opensuse155 is failing with the following error:
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc: In function ‘uint64_t arrow::compute::CompareSelected8_avx2(const uint8_t*, const uint8_t*, __m256i, __m256i, __m256i, int)’:
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:317:19: error: there are no arguments to ‘_mm256_set_m128i’ that depend on a template parameter, so a declaration of ‘_mm256_set_m128i’ must be available [-fpermissive]
__m256i right = _mm256_set_m128i(right_hi, right_lo);
^~~~~~~~~~~~~~~~
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:317:35: error: ‘_mm256_set_m128i’ was not declared in this scope
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:317:35: note: suggested alternative: ‘_mm256_set_epi8’
__m256i right = _mm256_set_m128i(right_hi, right_lo);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
_mm256_set_epi8
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc: In instantiation of ‘uint64_t arrow::compute::CompareSelected8_avx2(const uint8_t*, const uint8_t*, __m256i, __m256i, __m256i, int) [with int column_width = 2; uint64_t = long unsigned int; uint8_t = unsigned char; __m256i = __vector(4) long long int]’:
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:502:44: required from ‘arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*)::<lambda(const uint8_t*, const uint8_t*, uint32_t, __m256i, __m256i, __m256i)> [with bool use_selection = true; uint8_t = unsigned char; uint32_t = unsigned int; __m256i = __vector(4) long long int]’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:499:10: required from ‘struct arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*) [with bool use_selection = true; uint32_t = unsigned int; uint16_t = short unsigned int; uint8_t = unsigned char]::<lambda(const uint8_t*, const uint8_t*, uint32_t, __m256i, __m256i, __m256i)>’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:496:62: required from ‘static uint32_t arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*) [with bool use_selection = true; uint32_t = unsigned int; uint16_t = short unsigned int; uint8_t = unsigned char]’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:672:83: required from here
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:317:35: error: ‘_mm256_set_m128i’ was not declared in this scope
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:317:35: note: suggested alternative: ‘_mm256_set_epi8’
__m256i right = _mm256_set_m128i(right_hi, right_lo);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
_mm256_set_epi8
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc: In instantiation of ‘uint64_t arrow::compute::CompareSelected8_avx2(const uint8_t*, const uint8_t*, __m256i, __m256i, __m256i, int) [with int column_width = 4; uint64_t = long unsigned int; uint8_t = unsigned char; __m256i = __vector(4) long long int]’:
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:516:44: required from ‘arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*)::<lambda(const uint8_t*, const uint8_t*, uint32_t, __m256i, __m256i, __m256i)> [with bool use_selection = true; uint8_t = unsigned char; uint32_t = unsigned int; __m256i = __vector(4) long long int]’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:513:10: required from ‘struct arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*) [with bool use_selection = true; uint32_t = unsigned int; uint16_t = short unsigned int; uint8_t = unsigned char]::<lambda(const uint8_t*, const uint8_t*, uint32_t, __m256i, __m256i, __m256i)>’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:510:62: required from ‘static uint32_t arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*) [with bool use_selection = true; uint32_t = unsigned int; uint16_t = short unsigned int; uint8_t = unsigned char]’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:672:83: required from here
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:317:35: error: ‘_mm256_set_m128i’ was not declared in this scope
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:317:35: note: suggested alternative: ‘_mm256_set_epi8’
__m256i right = _mm256_set_m128i(right_hi, right_lo);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
_mm256_set_epi8
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc: In instantiation of ‘uint64_t arrow::compute::Compare8_avx2(const uint8_t*, const uint8_t*, uint32_t, __m256i, __m256i, int) [with int column_width = 0; uint64_t = long unsigned int; uint8_t = unsigned char; uint32_t = unsigned int; __m256i = __vector(4) long long int]’:
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:477:36: required from ‘arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*)::<lambda(const uint8_t*, const uint8_t*, uint32_t, __m256i, __m256i, __m256i)> [with bool use_selection = true; uint8_t = unsigned char; uint32_t = unsigned int; __m256i = __vector(4) long long int]’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:470:10: required from ‘struct arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*) [with bool use_selection = true; uint32_t = unsigned int; uint16_t = short unsigned int; uint8_t = unsigned char]::<lambda(const uint8_t*, const uint8_t*, uint32_t, __m256i, __m256i, __m256i)>’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:467:62: required from ‘static uint32_t arrow::compute::KeyCompare::CompareBinaryColumnToRowImp_avx2(uint32_t, uint32_t, const uint16_t*, const uint32_t*, arrow::compute::LightContext*, const arrow::compute::KeyColumnArray&, const arrow::compute::RowTableImpl&, uint8_t*) [with bool use_selection = true; uint32_t = unsigned int; uint16_t = short unsigned int; uint8_t = unsigned char]’
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:672:83: required from here
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:368:35: error: ‘_mm256_set_m128i’ was not declared in this scope
__m256i right = _mm256_set_m128i(right_hi, right_lo);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/arrow/cpp/src/arrow/compute/row/compare_internal_avx2.cc:368:35: note: suggested alternative: ‘_mm256_set_epi8’
__m256i right = _mm256_set_m128i(right_hi, right_lo);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
_mm256_set_epi8
GH-43389 may be related.
Component(s)
C++