Hi Richard, How does "cpu_crs_R" work? In your version you hold a pointer to the current register set instead of copying registers back and forth like I did, which makes sense.
But how does TCG know which set to refer to when it generates code? It looks like it's always accessing the same cpu_crs_R, so how does it relate to the correct register set on "shadow_regs"? In fact, I imagined it would be necessary to change "cpu_get_tb_cpu_state" and set "cs_base" or "flags" to STATUS.CRS such that different code would be generated for each shadow instance. Otherwise, each gpr access would be indirect. I'm probably missing something here. Thanks, Amir