I am currently building a package for msieve which is a library (and demo frontend program) to factor large integers. As you can imagine, this is a CPU intensive task and the source contains some assembler code to make it as fast as possible.
Using the gcc option ‘-march=i586’ throws an error:
unknown register name '%mm0' in 'asm'
The Makefile suggests to use -march=athlon-xp for 32-bit builds and -march=k8 for 64-bit builds. With these options the package builds, but I do not know how portable this is. What would you recommend?
Note: The $RPM_OPT_FLAGS default works for 64-bit but fails (with the above error) for 32-bit builds for 11.1 and SLE_11_SP1.