Revert changes in BufferUtils.cpp

Should fix #9933
This commit is contained in:
Nekotekina 2021-03-09 19:19:24 +03:00
commit 9cbe77904d

View file

@ -140,12 +140,13 @@ namespace
} }
} }
for (u32 i = 0; i < remaining; ++i) if (remaining)
{ {
be_t<u32> val; const auto src_ptr2 = reinterpret_cast<const se_t<u32, true, 1>*>(src_ptr);
std::memcpy(&val, src_ptr + i * sizeof(val), sizeof(val)); const auto dst_ptr2 = reinterpret_cast<nse_t<u32, 1>*>(dst_ptr);
le_t<u32> nval = +val;
std::memcpy(dst_ptr + i * sizeof(nval), &nval, sizeof(nval)); for (u32 i = 0; i < remaining; ++i)
dst_ptr2[i] = src_ptr2[i];
} }
} }
@ -217,18 +218,20 @@ namespace
const u32 remaining = dword_count % 4; const u32 remaining = dword_count % 4;
for (u32 i = 0; i < remaining; ++i) if (remaining)
{ {
be_t<u32> val; const auto src_ptr2 = reinterpret_cast<const se_t<u32, true, 1>*>(src_ptr);
std::memcpy(&val, src_ptr + i * sizeof(val), sizeof(val)); const auto dst_ptr2 = reinterpret_cast<nse_t<u32, 1>*>(dst_ptr);
le_t<u32> nval;
std::memcpy(&nval, dst_ptr + i * sizeof(nval), sizeof(nval));
if (val != nval) for (u32 i = 0; i < remaining; ++i)
{ {
nval = val; const u32 data = src_ptr2[i];
std::memcpy(dst_ptr + i * sizeof(nval), &nval, sizeof(nval));
bits_diff = _mm_set1_epi64x(-1); if (dst_ptr2[i] != data)
{
dst_ptr2[i] = data;
bits_diff = _mm_set1_epi64x(-1);
}
} }
} }
@ -280,12 +283,13 @@ namespace
} }
} }
for (u32 i = 0; i < remaining; ++i) if (remaining)
{ {
be_t<u16> val; auto src_ptr2 = reinterpret_cast<const se_t<u16, true, 1>*>(src_ptr);
std::memcpy(&val, src_ptr + i * sizeof(val), sizeof(val)); auto dst_ptr2 = reinterpret_cast<nse_t<u16, 1>*>(dst_ptr);
le_t<u16> nval = +val;
std::memcpy(dst_ptr + i * sizeof(nval), &nval, sizeof(nval)); for (u32 i = 0; i < remaining; ++i)
dst_ptr2[i] = src_ptr2[i];
} }
} }