- if condition for one the paths in workspace size calculation was
misspelled
- return value from Dbdsqr was ignored in some paths, leaving it at
false (failed) value
- if the input matrix A was rescaled, the output singular values have
to be unscaled back. The code uses Dlascl which treats the s slice as
a matrix. The column major reference treats it as minmn-by-1 matrix
with the stride minmn, and this was not correctly translated in our
row major implementation.
Also clean up the initial parameter checks.