ARMHF Double/Float VFP Register Allocation

On ARM hard float (VFP ABI) there is a subtle issue with VFP register allocation fixed in this pull request.

Allocating registers for floats and doubles would assign a floating point value to a free register 32bit register even after putting a previous double value on the stack.