]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseLib/Ia32/Thunk16.asm
Current Thunk16.asm implementation clears reserved bits, which does not follow IA32...
[mirror_edk2.git] / MdePkg / Library / BaseLib / Ia32 / Thunk16.asm
index 6df0a4a46adae20437302233146a0c67dad8a9a0..3e84aedf3df72b84621644895a6e6791e58da092 100644 (file)
@@ -3,7 +3,7 @@
 \r
 ;------------------------------------------------------------------------------\r
 ;\r
-; Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>\r
+; Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>\r
 ; 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
@@ -237,7 +237,7 @@ InternalAsmThunk16  PROC    USES    ebp ebx esi edi ds  es  fs  gs
     and     eax, 7ffffffeh              ; clear PE, PG bits\r
     mov     ebp, cr4\r
     mov     [edx + (SavedCr4 - SavedCr0)], ebp\r
-    and     ebp, 300h                   ; clear all but PCE and OSFXSR bits\r
+    and     ebp, NOT 30h                ; clear PAE, PSE bits\r
     push    10h\r
     pop     ecx                         ; ecx <- selector for data segments\r
     lgdt    fword ptr [edx + (_16Gdtr - SavedCr0)]\r