I have tried searching for an answer to this but can not find a definitive reason.
I am trying to optimise some 8051 C code to reduce code space. I made the following change..
xdata unsigned char a, b;
to
data unsigned char a, b;
... and saw my Code size reduce by 39Bytes(feels like christmas).
From: Program Size: data=9.0 ...code=10509
to: Program Size: data=11.0 ... code=10468
Question: Why has the codespace reduced by so much for such a minor change?