[Speex-dev] Compiler warnings with GCC 3.4.4 and perfomance
question on a Arm 7
tom.abcd at gmail.com
Tue Jan 24 07:33:21 PST 2006
> 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?
> > The second warning is in ltp_arm4.h in "pitch_xcorr(" getting a warning of:
> > "matching constraint does not allow a register" on the " __asm__
> > __volatile__ " line. I have no idea how to fix this warning.
> can you give me more info on this?
Not sure what info will help but here it goes...
I am using GCC 3.4.4 compiling ltp.c I get 8 warnings and all of them
seem to be when
static void pitch_xcorr(const spx_word16_t *_x, const spx_word16_t
*_y, spx_word32_t *corr, int len, int nb_pitch, char *stack) "
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.
So what version of GCC are you using?
> I have found the performance/MHz of ARM CPUs is extremely variable.
> Given that, the results you're getting may make sense. Just be aware
> that there are still a few float operations left in wideband, so you
> might be hurt a bit by that.
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.)
More information about the Speex-dev