[Speex-dev] Compiler warnings with GCC 3.4.4 and perfomance
question on a Arm 7
Jean-Marc Valin
jean-marc.valin at usherbrooke.ca
Tue Jan 24 20:37:39 PST 2006
On Tue, 2006-01-24 at 10:33 -0500, tom abcd wrote:
> > OK, I forgot to update the ARM4 code. That should definitely be fixed
> > (otherwise it's not going to work).
>
> If this is not going to work then why does it work on my Arm? Any
> quick fix I can do for now?
Didn't you mention you were only using the decoder? That function is
used in the encoder only.
> is included from ltp_arm4.h
> The error places the cursor on the __asm__ __volatile__ (
> line in the function. I am compiling with Optimization Level 1.
>
> I did a quick google search and found this where someone else had a
> similar problem when switching from 3.2.3 to GCC 3.4.0.
> http://gcc.gnu.org/ml/gcc/2004-04/msg01455.html
I'll need to have a closer look at this to understand what's really
going on. I suspect the generated code is still right, though.
> So what version of GCC are you using?
I was using gcc 3.3 at the time I wrote this code.
> Any suggestions as to which functions I should look at for the float
> operations to change to Integer? (assuming it is a simple task to
> change the code from float to int or if I can copy how you change the
> same kind of statements in the narrowband float to int conversion
> otherwise I will probability will not figure it out and will just live
> with the performance I have now.)
I think most of the float ops left are in sb_celp.c but float->fixed
conversion isn't trivial, since you always need to make sure that the
quality isn't degraded by the loss of accuracy (for each change made).
Jean-Marc
More information about the Speex-dev
mailing list