@@ -86,35 +86,35 @@ class MemoryObserver {
86
86
for (auto j = 0u ; j < (32 / bufferSize); ++j) {
87
87
std::ranges::copy (buffer, extendedBuffer.begin () + j * bufferSize);
88
88
}
89
- const auto twoCopies = _mm256_loadu_epi8 (extendedBuffer.data ());
89
+ const auto copies = _mm256_loadu_epi8 (extendedBuffer.data ());
90
90
91
91
switch (mask) {
92
92
case 0 : {
93
93
const auto firstShuffleMask = _mm256_set_epi8 (3 , 2 , 1 , 0 , 7 , 6 , 5 , 4 , 2 , 1 , 0 , 7 , 6 , 5 , 4 , 3 , 1 , 0 , 7 ,
94
94
6 , 5 , 4 , 3 , 2 , 0 , 7 , 6 , 5 , 4 , 3 , 2 , 1 );
95
- const auto firstShuffle = _mm256_shuffle_epi8 (twoCopies , firstShuffleMask);
96
- return _mm256_cmpeq_epi8 (twoCopies , firstShuffle);
95
+ const auto firstShuffle = _mm256_shuffle_epi8 (copies , firstShuffleMask);
96
+ return _mm256_cmpeq_epi8 (copies , firstShuffle);
97
97
}
98
98
case 1 : {
99
99
const auto secondShuffleMask = _mm256_set_epi8 (7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 , 6 , 5 , 4 , 3 , 2 , 1 , 0 , 7 , 5 , 4 , 3 ,
100
100
2 , 1 , 0 , 7 , 6 , 4 , 3 , 2 , 1 , 0 , 7 , 6 , 5 );
101
- const auto secondShuffle = _mm256_shuffle_epi8 (twoCopies , secondShuffleMask);
102
- return _mm256_cmpeq_epi8 (twoCopies , secondShuffle);
101
+ const auto secondShuffle = _mm256_shuffle_epi8 (copies , secondShuffleMask);
102
+ return _mm256_cmpeq_epi8 (copies , secondShuffle);
103
103
}
104
104
case 2 : {
105
105
assert (bufferSize == 16 );
106
106
const auto thirdShuffleMask = _mm256_set_epi8 (11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 9 , 8 ,
107
107
7 , 6 , 5 , 4 , 3 , 2 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 );
108
- const auto thirdShuffle = _mm256_shuffle_epi8 (twoCopies , thirdShuffleMask);
109
- return _mm256_cmpeq_epi8 (twoCopies , thirdShuffle);
108
+ const auto thirdShuffle = _mm256_shuffle_epi8 (copies , thirdShuffleMask);
109
+ return _mm256_cmpeq_epi8 (copies , thirdShuffle);
110
110
}
111
111
case 3 : {
112
112
assert (bufferSize == 16 );
113
113
const auto fourthShuffleMask =
114
114
_mm256_set_epi8 (15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 13 , 12 , 11 , 10 , 9 , 8 , 7 ,
115
115
6 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 );
116
- const auto fourthShuffle = _mm256_shuffle_epi8 (twoCopies , fourthShuffleMask);
117
- return _mm256_cmpeq_epi8 (twoCopies , fourthShuffle);
116
+ const auto fourthShuffle = _mm256_shuffle_epi8 (copies , fourthShuffleMask);
117
+ return _mm256_cmpeq_epi8 (copies , fourthShuffle);
118
118
}
119
119
default :
120
120
return _mm256_setzero_si256 ();
@@ -138,8 +138,7 @@ class MemoryObserver {
138
138
}
139
139
140
140
m_addresses.clear ();
141
- const auto step = m_step;
142
- for (auto i = 0u ; i + sequenceSize < memSize; i += step) {
141
+ for (auto i = 0u ; i + sequenceSize < memSize; i += m_step) {
143
142
std::copy_n (memData + i, sequenceSize, buffer.data ());
144
143
145
144
bool bAllEqual = true ;
0 commit comments