The one (working) FFT example from yesterday was written when "ARM doesn't have hardware floating point".
Our Kindles do have hardware floating point, almost, sort-of, ...
The K3 (VFP) unit **almost** supports IEEE 754 except for a few of the details that don't matter in the simple math world used here.
While re-vamping that decade old code (whose big claim to fame at the moment is that it "works out of the box") a person would want to keep in mind at least the basics:
http://infocenter.arm.com/help/index.../Chdidbba.html
(and the topic just above on the left)
That the VFP does best with short vectors of 8 single or 4 double precision values.
Also note, because of the **almost** IEEE 754, you want to include in the gcc optons:
-mfpu=vfp -mfloat-abi=softfp -funsafe-math-optimizations -std=c99
Also that libm is a double precision library (the -std=c99 is for some libm functions).