On Sun, Jan 30, 2011 at 02:46:21PM +0100, Philipp Überbacher wrote: > Thanks, I see this now after Peter did another test with quite different > results. I looked at it out of context because I simply don't understand > the context. I only know what a ft does but not how it works, nor have I > implemented a fft, so the code with its two-letter variables is > meaningless to me. It's not clear if Peter's test included the '+ 1e-6'. I'd expect the result to be correct then even with -O3. If not, increasing the added constant should fix it. > > There's nothing funky about them, they are part of C and C++. > > They were funky to me mainly because I had to look them up but also > because operating on the bit representation requires a different mode of > thinking. I bet it also has its own set of pitfalls. If your machine uses BCD integers you could have some surprises... If you don't like m <<= 1, just write m *= 2. The compiler will very probably use a bit shift to do this even at low optimisation levels. Ciao, -- FA There are three of them, and Alleline. _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/listinfo/linux-audio-user