[GlobalISel][AArch64] Teach GISel to handle shifts in load addressing modes
When we select the XRO variants of loads, we can pull in very specific shifts
(of the size of an element). E.g.
ldr x1, [x2, x3, lsl #3]
This teaches GISel to handle these when they're coming from shifts
This adds a new addressing mode function, selectAddrModeShiftedExtendXReg
which recognizes this pattern.
This also packs this up with selectAddrModeRegisterOffset into
selectAddrModeXRO. This is intended to be equivalent to selectAddrModeXRO
Also update load-addressing-modes to show that all of the cases here work.
Differential Revision: https://reviews.llvm.org/D65119