Commit ad413fd 1 parent de98d9b commit ad413fd Copy full SHA for ad413fd
File tree 1 file changed +9
-1
lines changed
1 file changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -106,15 +106,23 @@ class AVX2Vector {
106
106
inline uint16_t sum () const {
107
107
__m256i sum256 = _mm256_sad_epu8 (vector, _mm256_setzero_si256 ());
108
108
__m128i sum128 = _mm_add_epi64 (_mm256_extractf128_si256 (sum256, 1 ), _mm256_castsi256_si128 (sum256));
109
- uint16_t res32 = _mm_extract_epi32 (sum128, 0 ) + _mm_extract_epi32 (sum128, 1 );
109
+ /*
110
+ uint16_t res32 = _mm_extract_epi32(sum128, 0) + _mm_extract_epi32(sum128, 1);
110
111
uint16_t res32_2 = _mm_extract_epi32(sum128, 0) + _mm_extract_epi32(sum128, 2);
111
112
uint16_t res64 = _mm_extract_epi64(sum128, 0) + _mm_extract_epi64(sum128, 1);
112
113
if (res32 != res64) {
113
114
std::cout << "uint16_t res32 = " << res32 << "\n";
114
115
std::cout << "uint16_t res32_2 = " << res32_2 << "\n";
115
116
std::cout << "uint16_t res64 = " << res64 << "\n";
116
117
exit (1);
118
+ } else if (res32_2 != res64) {
119
+ std::cout << "uint16_t res32 = " << res32 << "\n";
120
+ std::cout << "uint16_t res32_2 = " << res32_2 << "\n";
121
+ std::cout << "uint16_t res64 = " << res64 << "\n";
122
+ exit (1);
117
123
}
124
+ */
125
+
118
126
119
127
return _mm_extract_epi64 (sum128, 0 ) + _mm_extract_epi64 (sum128, 1 );
120
128
}
You can’t perform that action at this time.
0 commit comments