>[...] > However, what's the point? Loading current from the prefix page > costs one cycle (assuming it is in L1 cache); on our platform > register->register operations and memory->register operations > from L1 usually take the same time.
I am trying to unmap the prefix page, if I do so the get_current has to be modified. Obvious option is to store current in a global; then an access to it would require some cycles to load the pointer from a global table then reference said pointer. Actually, a global may be advantageous because it does not need to be preloaded on every kernel entry. It's not that significant probably, but still. Just thought I'd explore. I did not notice that control registers cannot be loaded from memory. Also, some people think that access registers are 16 bits wide (my copy of PoO lists them as 32 bits wide). -- Pete
