This would buy us more memory. Using a 32-bits integer is enough for
most human-readable source code (up to 1M lines and 4K columns).
Previsouly, we used 8 bytes for a position, now 4 bytes, it would save
us 8 bytes for each Ref and each Symbol instance.
For LLVM-project binary index file, we save ~13% memory.
Before | After |
412MB | 355MB |
I think it's enough to say "position is packed into 32 bits to save space".
It'd be useful to spell out the consequences in a second line.