-gen gcc: emit single-precision constants at Double precision.
Otherwise they are emitted with 7 decimal digits, which is not enough to accurately represent 24-bit precision.
Unit tests: allow GEN as make parameter on cunit-tests/bmk-tests
e.g. 'make cunit-tests GEN=gcc'
-gen gcc: emit all floating-point constants in C99-compatible hex format.
e.g. 3.5 -> "0x1.Cp+1"
This prevents precision loss from emitting decimal constants.
Fix optimisation unit tests that had problems in -gen gcc
Disable tests on problem ops, e.g. log(0), (-4.4)^(2.5), 0^-2.5.
The first two returned NANs which aren't equal in GCC.
The last returns INF which needs an exact comparison (i.e. not subtraction with an EPSILON)
Also use CU_ASSERT[_DOUBLE]_EQUAL macros for clarity, and optimise precision of EPSILON_SNG consts
rtlib: Fix io_readxy module descriptions