This aims to simplify the logic in the execute2_1 process. It is not
really necessary to preserve the contents of ex2 when stalled, except
for ex2.e.last_nia; but when stalled, bits which would initiate
downstream actions, such as ex2.e.valid, ex2.e.interrupt and ex2.se,
should be cleared.
Also, the path through stage2_stall to the bypass valid signal has
shown up as a critical path. This dependency is there because the
mfspr instruction to a slow SPR or a PMU SPR should not forward a
result before the instruction is about to complete, because the result
might change (for example when reading the timebase). To avoid this
dependency, we simply don't forward results for mfspr to slow/PMU
SPRs.
Signed-off-by: Paul Mackerras <paulus@ozlabs.org>