]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseLib/Ia32/Monitor.c
Fix the bug in x64 thunk code that it cannot handle the case when GDT is loaded in...
[mirror_edk2.git] / MdePkg / Library / BaseLib / Ia32 / Monitor.c
index ec29a0df2dc67e8331eec2e52b753cfd1e4b4bb5..ef5a7929b2ab84e313535330b35ef4b83c3ead06 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   AsmMonitor function\r
 \r
-  Copyright (c) 2006, Intel Corporation<BR>\r
+  Copyright (c) 2006 - 2008, Intel Corporation<BR>\r
   All rights reserved. This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
 \r
 **/\r
 \r
-#if _MSC_EXTENSIONS\r
+/**\r
+  Sets up a monitor buffer that is used by AsmMwait().\r
 \r
+  Executes a MONITOR instruction with the register state specified by Eax, Ecx\r
+  and Edx. Returns Eax. This function is only available on IA-32 and x64.\r
+\r
+  @param  RegisterEax The value to load into EAX or RAX before executing the MONITOR\r
+                      instruction.\r
+  @param  RegisterEcx The value to load into ECX or RCX before executing the MONITOR\r
+                      instruction.\r
+  @param  RegisterEdx The value to load into EDX or RDX before executing the MONITOR\r
+                      instruction.\r
+\r
+  @return RegisterEax\r
+\r
+**/\r
 UINTN\r
 EFIAPI\r
 AsmMonitor (\r
@@ -32,4 +46,3 @@ AsmMonitor (
   }\r
 }\r
 \r
-#endif\r