
916 CHAPTER 11 Latency Tolerance
provided in such processors. The EPC is fed by the PC chain, so it always contains
the address of the last instruction retired from the pipeline. When an exception
occurs, the loading of the EPC is stopped with the faulting instruction, all the
incomplete instructions in the pipeline are squashed, and the exception handler
address is put in the PC. When the exception handler returns, the EPC is loaded
into the PC so that the faulting instruction is reexecuted. This is exactly the func-
tionality we need for multiple contexts. We simply need to replicate the EPC regis-
ter, providing one per active context. Th