Messages in this thread | | | Date | Mon, 16 Mar 2009 09:20:39 -0700 | From | Jeremy Fitzhardinge <> | Subject | Re: x86: asm doubt |
| |
Avi Kivity wrote: > Jeremy Fitzhardinge wrote: >> In 32-bit mode, moving to a segment register can fault if the >> underlying GDT/LDT entry is invalid. In 64-bit mode, segment >> registers are mostly decorative and have no function, and moving >> arbitrary values into them doesn't fault, making the exception >> catching unnecessary. > > 64-bit mode will in fact fault if an access is made outside the > GDT/LDT, or of the descriptor is invalid.
Oh, I didn't think it bothered. I guess I'm conflating that with the fact that it doesn't apply any of the segment properties to memory accesses. Anyway, in that case the 64-bit code should definitely be using the standard segment accessors.
J
| |