current implemention assumes hard float what means dedicated floating
point registers are used for floating point numbers. This does not work
on soft float toolchains where dedicated floating point registers and
opcodes are not used and/or available. On such toolchains the gcc
compiler provides a built-in define __NO_FPRS__ to signalize such a
behavior.