XCore target: fix handling of unsized global arrays in large code model
XCore target: Refactor the loading of constants into a register

This common functionality will be used to lower FRAME_TO_ARGS_OFFSET.
XCore target: Refactor LR handling

We also narrow the liveness of FP & LR during the prologue to
reflect the actual usage of the registers.
I have been unable to construct a test to prove the previous live
range was too large.
XCore target: Optimise entsp / retsp selection
XCore target: Lower RETURNADDR

Only handles a depth of zero (the same as FRAMEADDR)
XCore target: Lower FRAME_TO_ARGS_OFFSET

This requires a knowledge of the stack size which is not known until
the frame is complete, hence the need for the XCoreFTAOElim pass
which lowers the XCoreISD::FRAME_TO_ARGS_OFFSET instrution into its
final form.
XCore target: Lower EH_RETURN