Volume 3: General-Purpose and System Instructions - Stanford ...

Volume 3: General-Purpose and System Instructions - Stanford ... Volume 3: General-Purpose and System Instructions - Stanford ...

scs.stanford.edu
from scs.stanford.edu More from this publisher
13.07.2015 Views

AMD64 Technology 24594 Rev. 3.10 February 2005LLDTLoad Local Descriptor Table RegisterLoads the specified segment selector into the visible portion of the local descriptortable (LDT). The processor uses the selector to locate the descriptor for the LDT in theglobal descriptor table. It then loads this descriptor into the hidden portion of theLDTR.If the source operand is a null selector, the LDTR is marked invalid and all referencesto descriptors in the LDT will generate a general protection exception (#GP), exceptfor the LAR, VERR, VERW or LSL instructions.In legacy and compatibility modes, the LDT descriptor is 8 bytes long and contains a32-bit base address.In 64-bit mode, the LDT descriptor is 16-bytes long and contains a 64-bit base address.The LDT descriptor type (02h) is redefined in 64-bit mode for use as the 16-byte LDTdescriptor.This instruction must be executed in protected mode. It is only provided for use byoperating system software at CPL 0.LLDT is a serializing instruction.Mnemonic Opcode DescriptionLLDT reg/mem16 0F 00 /2 Load the 16-bit segment selector into the local descriptor table registerand load the LDT descriptor from the GDT.Related InstructionsLGDT, LIDT, LTR, SGDT, SIDT, SLDT, STRrFLAGS AffectedNone322 LLDT

24594 Rev. 3.10 February 2005 AMD64 TechnologyExceptionsException RealVirtual8086 Protected Cause of ExceptionInvalid opcode, #UD X X This instruction is only recognized in protected mode.Segment not present,X The LDT descriptor was marked not present.#NP (selector)Stack, #SS X A memory address exceeded the stack segment limit or was noncanonical.General protection, #GPX A memory address exceeded a data segment limit or was noncanonical.General protection, #GP(selector)XXXXXXCPL was not 0.A null data segment was used to reference memory.The source selector did not point into the GDT.The descriptor was beyond the GDT limit.The descriptor was not an LDT descriptor.The descriptor's extended attribute bits were not zero in 64-bitmode.X The new LDT base address was non-canonical.Page fault, #PF X A page fault resulted from the execution of the instruction.LLDT 323

AMD64 Technology 24594 Rev. 3.10 February 2005LLDTLoad Local Descriptor Table RegisterLoads the specified segment selector into the visible portion of the local descriptortable (LDT). The processor uses the selector to locate the descriptor for the LDT in theglobal descriptor table. It then loads this descriptor into the hidden portion of theLDTR.If the source oper<strong>and</strong> is a null selector, the LDTR is marked invalid <strong>and</strong> all referencesto descriptors in the LDT will generate a general protection exception (#GP), exceptfor the LAR, VERR, VERW or LSL instructions.In legacy <strong>and</strong> compatibility modes, the LDT descriptor is 8 bytes long <strong>and</strong> contains a32-bit base address.In 64-bit mode, the LDT descriptor is 16-bytes long <strong>and</strong> contains a 64-bit base address.The LDT descriptor type (02h) is redefined in 64-bit mode for use as the 16-byte LDTdescriptor.This instruction must be executed in protected mode. It is only provided for use byoperating system software at CPL 0.LLDT is a serializing instruction.Mnemonic Opcode DescriptionLLDT reg/mem16 0F 00 /2 Load the 16-bit segment selector into the local descriptor table register<strong>and</strong> load the LDT descriptor from the GDT.Related <strong>Instructions</strong>LGDT, LIDT, LTR, SGDT, SIDT, SLDT, STRrFLAGS AffectedNone322 LLDT

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!