The "mcr CP15_BPIALLIS(r0)" instruction is used for invalidating entire branch predictor. But the problem is, since this is the generic code and can be called on any armv7-r architecture based CPU's. It is a problem, if this instruction is called in uni processor configuration. Because, BPIALLIS (c7, 0, c1, 6) instruction is only added as part of the "Multiprocessing Extensions" (As per ARM® Architecture Reference Manual /ARMv7-A and ARMv7-R edition)
So in my opinion, this instruction should be under SMP configuration. In non-SMP configuration this instruction could become undefined.