Jonathan Sillito wrote:(3) One other efficiency thought: I wonder if the interpreter's context could be changed to a pointer to struct Parrot_Context? This would make accessing the stacks slightly slower but would of course make restoring the context very quick. Just a thought ...
I tried this, and there was a distinct slowdown on accessing the regs through the dereference. Dan and I debated this because I had the same idea, but after profiling I proved Dan right. I think it is best optimized to the common case which is register access, not context switches.
-Melvin