On Oct 9, 2009, at 4:14 PM, leon deng wrote:
> when I build libmad in different platforms, i found two flags
> settings are different. I do not understand what those flags are
> used for, can any expert tell me about it?
> When i build libmad , i first ./configure, and then make.
> when I build it on 32 bits mac and 32 bits centOS, i have flags
> FPM_INTEL
> ASO_ZEROCHECK
>
> when I build it on 64 bits ubuntu and 64 bits centOS, I have flags
> FPM_DEFAULT
> In this case, Makefile do not have ASO_ZEROCHECK flag.
Probably they should be the same for 64 bits (amd64) as for 32 bits
(i386).
FPM_INTEL means to use the x86 assembler instructions for fixed-point
multiplication. ASO_ZEROCHECK is an optimization that works well
under x86 so should be enabled by default.
You could try FPM_64BIT as an alternative. FPM_DEFAULT should be
avoided because it provides poor accuracy.
> Another question is about :
> in libmad Makefile, there are lots of optimization flags. are those
> flags critical and should I also brought them all to my program?
The optimization flags were hand-picked because at the time they were
chosen they worked better than e.g. a simple -O2. They are only
useful when building libmad and are probably not necessary to
duplicate for the rest of your program.
--
Rob Leslie
rob@...