The type legalizer has by default no method of doing this bitcast other than storing and reloading the value from stack.
This patch implements a custom lowering of this operation using extractions of subregs (z13 and earlier using FP128 register pairs), or of vector elements (with vector enhancements-1 using VR128 FP registers).
(Unfortunately there is no "low" subreg for a VR128 reg, so that case had to get its own separate handling.)
hmm.. should the check for soft-float be done here instead?