I have configured libmad with the option --enable-fpm=default and --enable-fpm=64bit and the compiled with the option --mcpu=arm7di to disable thumb and the enhanced multiply witch our processor doesn't support. The compile fails with the following errors :
Error: bad instruction 'smull r0,lr,r1,r3' Error: bad instruction 'smlal r0,lr,r1,r3'
There are a lot of these errors, and the registers occurring in the statements change. I think these instructions are specific to the extended multiply unit which is why they throw errors when compiling with the ARM7DI as the target, the question is, how to compile without using these instructions and using ARM7DI friendly ones instead?
On Thu, 6 Jun 2002 10:42:38 -0700 Rob Leslie rob@mars.org wrote:
On Thursday, June 6, 2002, at 07:56 AM, Gareth Bransby wrote:
Is there a way to compile the library without incurring the SMULL instructions? I recall something to do with a generic C file that
was
slower than the optimised assemly, but was platform independant, I
just
can't remember enough details to dig it out and get it working.
Try passing --enable-fpm=64bit or --enable-fpm=default to `configure'. The former will give you better accuracy (if it works), but the latter is more portable.
-- Rob Leslie rob@mars.org