Home | History | Annotate | Download | only in Ia32
      1 /** @file
      2   AsmReadCr0 function
      3 
      4   Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
      5   This program and the accompanying materials
      6   are licensed and made available under the terms and conditions of the BSD License
      7   which accompanies this distribution.  The full text of the license may be found at
      8   http://opensource.org/licenses/bsd-license.php.
      9 
     10   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     11   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     12 
     13 **/
     14 
     15 
     16 
     17 
     18 /**
     19   Reads the current value of the Control Register 0 (CR0).
     20 
     21   Reads and returns the current value of CR0. This function is only available
     22   on IA-32 and x64. This returns a 32-bit value on IA-32 and a 64-bit value on
     23   x64.
     24 
     25   @return The value of the Control Register 0 (CR0).
     26 
     27 **/
     28 UINTN
     29 EFIAPI
     30 AsmReadCr0 (
     31   VOID
     32   )
     33 {
     34   __asm {
     35     mov     eax, cr0
     36   }
     37 }
     38