Big loud bell began ringing. The RM7000 fetches and decodes multiple instructions in one go. And just like the E9000 cores it does throw an exception if it doesn't like one of the opcodes even if that doesn't actually get executed. The kernel has a workaround for this PMC-Sierra peculiarity (I call it a bug) but it's only being activated for E9000 platforms.
Are you really sure RM7000 has this bug? Workaround mentioned above breaks gcc signal frame unwinding mechanism: it search for sigcontext struct at fixed offset from signal trampoline.
And one another known RM7000 bug, maybe not taken into account by linux: errata 38. r4k_wait is not suitable for RM7000 on some systems. I don't know if "O2" is affected.
Sergey Rogozhkin