It turns out that this is also broken on mips64el. Further testing
reveals that
-mips32r2 -mtune=mips32r2 -mabi=32
compiles the PAUSE instruction just fine whereas
-mips64r2 -mtune=mips64r2 -mabi=64
does not. The PAUSE instruction was introduced in version 2.6 of the
MIPS ISA and GCC for some reason does not allow usage of it with MIPS64.
Modify the macro to fix the situation instead of just matching on
octeon, which is not quite correct.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
It turns out there's upstream support for it. A small patch is needed
to fix softfloat support.
Also added patch to fix boost-fiber on octeon+. Failure happens because
the platform is based on an old MIPSr2 standard that lacks the pause
instruction.
It also turns out that MIPS64 builds are done with the wrong ABI.
Signed-off-by: Rosen Penev <rosenp@gmail.com>