From af1a266670d040d2f4083ff309d732d648afba2a Mon Sep 17 00:00:00 2001 From: Angelos Mouzakitis Date: Tue, 10 Oct 2023 14:33:42 +0000 Subject: Add submodule dependency files Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec --- roms/edk2/MdePkg/Library/BaseLib/Ia32/ReadCr4.c | 34 +++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 roms/edk2/MdePkg/Library/BaseLib/Ia32/ReadCr4.c (limited to 'roms/edk2/MdePkg/Library/BaseLib/Ia32/ReadCr4.c') diff --git a/roms/edk2/MdePkg/Library/BaseLib/Ia32/ReadCr4.c b/roms/edk2/MdePkg/Library/BaseLib/Ia32/ReadCr4.c new file mode 100644 index 000000000..f948f82b7 --- /dev/null +++ b/roms/edk2/MdePkg/Library/BaseLib/Ia32/ReadCr4.c @@ -0,0 +1,34 @@ +/** @file + AsmReadCr4 function + + Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + + + + +/** + Reads the current value of the Control Register 4 (CR4). + + Reads and returns the current value of CR4. This function is only available + on IA-32 and x64. This returns a 32-bit value on IA-32 and a 64-bit value on + x64. + + @return The value of the Control Register 4 (CR4). + +**/ +UINTN +EFIAPI +AsmReadCr4 ( + VOID + ) +{ + __asm { + _emit 0x0f // mov eax, cr4 + _emit 0x20 + _emit 0xE0 + } +} + -- cgit 1.2.3-korg