Maurizio Cembalo
2007-Apr-02 10:20 UTC
[Speex-dev] Info on Symbian, ARM and OFFSET_IMM8 relocation error
Hi all, i'm using speex under symbian. When i have compiled the lib for ARM platform i have obtained the follow error: "Error: Can not represent OFFSET_IMM8 relocation in this object file format (1)" I have defined FIXED_POINT 1 and ARM4_ASM. The error is in the function forced_pitch_quant contained in ltp.c. The line that produce the error is: target[i]=EXTRACT16(SATURATE(SUB32(EXTEND32(target[i]),EXTEND32(res[i])),32700)); Why this error??? In the emulator i have no problem. I resolved with the sequent workaround: spx_word16_t tmp EXTRACT16(SATURATE(SUB32(EXTEND32(target[i]),EXTEND32(res[i])), 32700)); target[i] = tmp; Now i can compile e linking the lib in my application. Regards, maurizio
Jean-Marc Valin
2007-Apr-02 15:12 UTC
[Speex-dev] Info on Symbian, ARM and OFFSET_IMM8 relocation error
Hi, What you pasted below looks like a compiler bug to me, especially considering the workaround you use. Just curious, does the problem still happen if you disable ARM4_ASM? Jean-Marc Maurizio Cembalo a ?crit :> Hi all, > > i'm using speex under symbian. > When i have compiled the lib for ARM platform i have obtained the follow > error: > > "Error: Can not represent OFFSET_IMM8 relocation in > this object file format (1)" > > I have defined FIXED_POINT 1 and ARM4_ASM. > > The error is in the function forced_pitch_quant contained in ltp.c. > > The line that produce the error is: > target[i]=EXTRACT16(SATURATE(SUB32(EXTEND32(target[i]),EXTEND32(res[i])),32700)); > > > Why this error??? In the emulator i have no problem. > > I resolved with the sequent workaround: > > spx_word16_t tmp > EXTRACT16(SATURATE(SUB32(EXTEND32(target[i]),EXTEND32(res[i])), > 32700)); > target[i] = tmp; > > Now i can compile e linking the lib in my application. > > > Regards, > maurizio > _______________________________________________ > Speex-dev mailing list > Speex-dev@xiph.org > http://lists.xiph.org/mailman/listinfo/speex-dev > >
Maurizio Cembalo
2007-Apr-03 00:24 UTC
[Speex-dev] Info on Symbian, ARM and OFFSET_IMM8 relocation error
Hi, On 4/2/07, Jean-Marc Valin <jean-marc.valin@usherbrooke.ca> wrote:> Just curious, does the problem still > happen if you disable ARM4_ASM? >No, the problem is absent with ARM4_ASM disabled. Another error that I have with ARM and ASM is in the override functions inner_prod and pitch_xcorr defined in ltp_arm4.h. The error is "more than 10 operands in 'asm'". I have resolved with no inclusion of the that header file in ltp.c. regards, maurizio