Ben Armstrong explains what Code Cache is:
…
When we can’t execute code directly on the processor (aka ‘virtualization’) we have to fall back to a binary translation engine (aka ’emulation’) in order to provide the best performance possible this translation engine keeps a ‘code cache’ of recently translated code so that it can be reused (this essentially serves the same purpose as a physical cache on a processor)…
Read the article at source.