Why not just run a VM, and use the saved die area for more cache?
Then there are several that have lower level "programmable microcode" kind of level in the hardware, ranging from the Transmeta stuff to mainframe-era writable control store...
I was discussing about installation time, which only prevents situations were you make use of code rewriting tricks, which are anyway frowned upon in the day and age of read-only code sections and no-execute data sections.
Putting a link here for those that want to follow up.
http://staff.science.uva.nl/~poss/posts/2013/08/01/mill-cpu/
It would be cool if both the ARM and the x86 cores could use the same GPU.