Home | History | Annotate | Download | only in Ia32
      1 /**
      2   Implementation of 64-bit swap bytes
      3 
      4   Copyright (c) 2006 - 2007, 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 #include "BaseLibInternals.h"
     16 
     17 UINT64
     18 EFIAPI
     19 InternalMathSwapBytes64 (
     20   IN      UINT64                    Operand
     21   )
     22 {
     23   _asm {
     24     mov     eax, dword ptr [Operand + 4]
     25     mov     edx, dword ptr [Operand + 0]
     26     bswap   eax
     27     bswap   edx
     28   }
     29 }
     30 
     31