]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Library/BaseLib/Ia32/ReadGdtr.c
MdePkg/BaseLib: Support IA32 processors without CLFLUSH
[mirror_edk2.git] / MdePkg / Library / BaseLib / Ia32 / ReadGdtr.c
CommitLineData
e1f414b6 1/** @file\r
2 AsmReadGdtr function\r
3\r
bb817c56
HT
4 Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>\r
5 This program and the accompanying materials\r
e1f414b6 6 are licensed and made available under the terms and conditions of the BSD License\r
7 which accompanies this distribution. The full text of the license may be found at\r
e4a34497 8 http://opensource.org/licenses/bsd-license.php.\r
e1f414b6 9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13**/\r
14\r
1efcc4ae 15\r
47fc17d8 16#include "BaseLibInternals.h"\r
f734a10a 17\r
e1f414b6 18\r
42eedea9 19/**\r
20 Reads the current Global Descriptor Table Register(GDTR) descriptor.\r
21\r
22 Reads and returns the current GDTR descriptor and returns it in Gdtr. This\r
030cd1a2 23 function is only available on IA-32 and x64.\r
42eedea9 24\r
2fc59a00 25 @param Gdtr The pointer to a GDTR descriptor.\r
42eedea9 26\r
27**/\r
e1f414b6 28VOID\r
29EFIAPI\r
30InternalX86ReadGdtr (\r
31 OUT IA32_DESCRIPTOR *Gdtr\r
32 )\r
33{\r
34 _asm {\r
35 mov eax, Gdtr\r
36 sgdt fword ptr [eax]\r
37 }\r
38}\r
39\r