summaryrefslogtreecommitdiffstats
path: root/MdePkg/Library/BaseLib/Ia32/ReadMm0.c
blob: 00dfe05895e5d57710ed0f1e1a7bb1e144e08182 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/** @file
  AsmReadMm0 function

  Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
  SPDX-License-Identifier: BSD-2-Clause-Patent

**/




/**
  Reads the current value of 64-bit MMX Register #0 (MM0).

  Reads and returns the current value of MM0. This function is only available
  on IA-32 and x64.

  @return The current value of MM0.

**/
UINT64
EFIAPI
AsmReadMm0 (
  VOID
  )
{
  _asm {
    push    eax
    push    eax
    movq    [esp], mm0
    pop     eax
    pop     edx
    emms
  }
}