]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseLib/X64/CpuId.asm
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@152 6f19259b...
[mirror_edk2.git] / MdePkg / Library / BaseLib / X64 / CpuId.asm
index 867e92a677c61deb3aeb33f99afc8c60f8d07509..b5ac0fd2fc03dfdeb81b16bb47dcf58cb8965277 100644 (file)
@@ -1,62 +1,62 @@
-;------------------------------------------------------------------------------\r
-;\r
-; Copyright (c) 2006, Intel Corporation\r
-; All rights reserved. This program and the accompanying materials\r
-; are licensed and made available under the terms and conditions of the BSD License\r
-; which accompanies this distribution.  The full text of the license may be found at\r
-; http://opensource.org/licenses/bsd-license.php\r
-;\r
-; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-;\r
-; Module Name:\r
-;\r
-;   CpuId.Asm\r
-;\r
-; Abstract:\r
-;\r
-;   AsmCpuid function\r
-;\r
-; Notes:\r
-;\r
-;------------------------------------------------------------------------------\r
-\r
-    .code\r
-\r
-;------------------------------------------------------------------------------\r
-;  VOID\r
-;  EFIAPI\r
-;  AsmCpuid (\r
-;    IN   UINT32  RegisterInEax,\r
-;    OUT  UINT32  *RegisterOutEax  OPTIONAL,\r
-;    OUT  UINT32  *RegisterOutEbx  OPTIONAL,\r
-;    OUT  UINT32  *RegisterOutEcx  OPTIONAL,\r
-;    OUT  UINT32  *RegisterOutEdx  OPTIONAL\r
-;    )\r
-;------------------------------------------------------------------------------\r
-AsmCpuid    PROC    USES    rbx\r
-    mov     eax, ecx\r
-    push    rdx\r
-    push    rax                         ; save Index on stack\r
-    cpuid\r
-    test    r9, r9\r
-    jz      @F\r
-    mov     [r9], ecx\r
-@@:\r
-    pop     rcx\r
-    jrcxz   @F\r
-    mov     [rcx], eax\r
-@@:\r
-    mov     rcx, r8\r
-    jrcxz   @F\r
-    mov     [rcx], ebx\r
-@@:\r
-    mov     rcx, [rsp + 30h]\r
-    jrcxz   @F\r
-    mov     [rcx], edx\r
-@@:\r
-    pop     rax                         ; restore Index to rax as return value\r
-    ret\r
-AsmCpuid    ENDP\r
-\r
-    END\r
+;------------------------------------------------------------------------------
+;
+; Copyright (c) 2006, Intel Corporation
+; All rights reserved. This program and the accompanying materials
+; are licensed and made available under the terms and conditions of the BSD License
+; which accompanies this distribution.  The full text of the license may be found at
+; http://opensource.org/licenses/bsd-license.php
+;
+; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+;
+; Module Name:
+;
+;   CpuId.Asm
+;
+; Abstract:
+;
+;   AsmCpuid function
+;
+; Notes:
+;
+;------------------------------------------------------------------------------
+
+    .code
+
+;------------------------------------------------------------------------------
+;  VOID
+;  EFIAPI
+;  AsmCpuid (
+;    IN   UINT32  RegisterInEax,
+;    OUT  UINT32  *RegisterOutEax  OPTIONAL,
+;    OUT  UINT32  *RegisterOutEbx  OPTIONAL,
+;    OUT  UINT32  *RegisterOutEcx  OPTIONAL,
+;    OUT  UINT32  *RegisterOutEdx  OPTIONAL
+;    )
+;------------------------------------------------------------------------------
+AsmCpuid    PROC    USES    rbx
+    mov     eax, ecx
+    push    rdx
+    push    rax                         ; save Index on stack
+    cpuid
+    test    r9, r9
+    jz      @F
+    mov     [r9], ecx
+@@:
+    pop     rcx
+    jrcxz   @F
+    mov     [rcx], eax
+@@:
+    mov     rcx, r8
+    jrcxz   @F
+    mov     [rcx], ebx
+@@:
+    mov     rcx, [rsp + 38h]
+    jrcxz   @F
+    mov     [rcx], edx
+@@:
+    pop     rax                         ; restore Index to rax as return value
+    ret
+AsmCpuid    ENDP
+
+    END