util/nvmutil: optimise cmd_swap() further

don't do xor swap. we know gbe2 is always 4KB higher than
gbe in memory, so we can just set gbe2 to the value of gbe,
and OR the size in bytes of 4KB into gbe2

this is only a marginal speed boost, negligible even, but it's
done for the lulz
fsdg20230625
lbmkplaceholder 2022-12-23 10:37:30 +00:00
parent effcb942ce
commit 448ee5105d
1 changed files with 5 additions and 7 deletions

View File

@ -355,18 +355,16 @@ void
cmd_swap(void)
{
int part0, part1;
size_t g1 = (size_t) gbe;
size_t g2 = (size_t) gbe2;
size_t ptr;
part0 = validChecksum(0);
part1 = validChecksum(1);
if (part0 || part1) {
g1 ^= g2;
g2 ^= g1;
g1 ^= g2;
gbe = (uint8_t *) g1;
gbe2 = (uint8_t *) g2;
gbe2 = gbe;
ptr = (size_t) gbe;
ptr |= SIZE_4KB;
gbe = (uint8_t *) ptr;
gbeFileModified = 1;
nvmPartModified[0] = 1;