1 /** @file
2 AsmReadDr4 function
3
4 Copyright (c) 2006 - 2008, 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 Debug Register 4 (DR4).
20
21 Reads and returns the current value of DR4. 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 Debug Register 4 (DR4).
26
27 **/
28 UINTN
29 EFIAPI
AsmReadDr4(VOID)30 AsmReadDr4 (
31 VOID
32 )
33 {
34 __asm {
35 _emit 0x0f
36 _emit 0x21
37 _emit 0xe0
38 }
39 }
40
41