This patch unify the 39-bit and 42-bit mapping for aarch64 using only
one instrumentation algorithm (based on 39-bit mapping). A runtime
check avoid mapping 42-bit only segments for 39-bit kernels.
The LLVM instrumentation change is at [1]. The only downside of this
patch is for 42-bit VMA the 39-bit shadow/origin segments will be created
regardless. However a patch is possible to filter out this based on runtime
VMA information.
Why just 55 to 56? The whole 50 to 60 seems ok.
In general, I don't see a reason why the third hexadecimal digit can be anything but 0, please reconsider another case of this below.