On 11/20/2011 12:51 PM, Andreas Färber wrote:
> * Part of the problem is that common CPUState fields are not at the
> start of the struct. I have therefore been playing with a
> CPU_COMMON_PREFIX at the start of the struct and using a macro for
> clearing on reset, which preserves part of the common prefix fields.

Most of the RISC hosts have a limited displacement in their load and
store instructions.  E.g. 14 bits for Sparc, 12 bits for ARM, 10.
We want to be able to load and store the target cpu registers very
efficiently.

If you move all the common fields to the beginning, that will include
the (rather large) TLB tables, and overflow those small offsets.

This change would almost certainly be a Large Mistake.


r~

Reply via email to