]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Library/BaseLib/X86GetInterruptState.c
MdePkg/BaseLib: Add bit field population calculating methods
[mirror_edk2.git] / MdePkg / Library / BaseLib / X86GetInterruptState.c
CommitLineData
e1f414b6 1/** @file\r
2 IA-32/x64 GetInterruptState()\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
127010dd 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
e1f414b6 13**/\r
14\r
1efcc4ae 15\r
47fc17d8 16#include "BaseLibInternals.h"\r
f734a10a 17\r
e1f414b6 18\r
19/**\r
20 Retrieves the current CPU interrupt state.\r
21\r
9aa049d9 22 Returns TRUE is interrupts are currently enabled. Otherwise\r
23 returns FALSE.\r
e1f414b6 24\r
25 @retval TRUE CPU interrupts are enabled.\r
26 @retval FALSE CPU interrupts are disabled.\r
27\r
28**/\r
29BOOLEAN\r
30EFIAPI\r
31GetInterruptState (\r
32 VOID\r
33 )\r
34{\r
35 IA32_EFLAGS32 EFlags;\r
36\r
37 EFlags.UintN = AsmReadEflags ();\r
38bbd3d9 38 return (BOOLEAN)(1 == EFlags.Bits.IF);\r
e1f414b6 39}\r
40\r
41\r