mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-08-07 16:49:58 +00:00
parent
a6350d5dd1
commit
9cbe77904d
1 changed files with 23 additions and 19 deletions
|
@ -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];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue