(02-21-2015, 02:27 AM)Nintonito Wrote: So the feeling I'm getting is that its a waste of time because the code won't be any faster, unless the CPU emulator was someone completely rewritten with a tracer in mind. Makes sense. I guess i sort of underestimated the speed of the existing JIT. Still, tracer JIT's are a wonderful concept, and I kinda wish we saw more of them (I personally would be willing to trade disk/ram space for a worthwhile speed up. Especially since I have all this RAM in my computer that never gets used.)A tracing JIT could definitely be faster if only because it'd avoid the problem of limited block size, but the problem of switching between traces isn't trivial, and invalidation might become tricky. Again, it's doable IMO, it'd just be a pretty decent chunk of work!
"Code size" has nothing to do with trading disk or RAM; it has to do with trading instruction cache. Significant code size increases can cause massive performance loss, no matter how much memory you have.