JIT: reuse trampolines when possible

In tests, this showed hundreds of cache hits. A huge number of hits were, to my surprise, write trampolines with the same PC. I'm inferring from this that JIT code may be repeatedly invalidated and re-generated.

It seems this could easily lead to a trampoline-memory-leak causing the "Trampoline cache full" issue: https://code.google.com/p/dolphin-emu/issues/detail?id=7661

However, I was unable to reproduce that issue, so I'm not sure if this fixes it or not.