X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=OldMdePkg%2FLibrary%2FBaseLib%2FSwapBytes16.c;fp=OldMdePkg%2FLibrary%2FBaseLib%2FSwapBytes16.c;h=134ccb1ef098583965848bd220ad6039f4fa43ac;hp=0000000000000000000000000000000000000000;hb=586cd1f1f4129ab7ec24543d4968801e17cc870b;hpb=144d783d40c8a02113350feabd1b9a55b692313f diff --git a/OldMdePkg/Library/BaseLib/SwapBytes16.c b/OldMdePkg/Library/BaseLib/SwapBytes16.c new file mode 100644 index 0000000000..134ccb1ef0 --- /dev/null +++ b/OldMdePkg/Library/BaseLib/SwapBytes16.c @@ -0,0 +1,36 @@ +/** @file + Math worker functions. + + 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. + +**/ + +#include "BaseLibInternals.h" + +/** + Switches the endianess of a 16-bit integer. + + This function swaps the bytes in a 16-bit unsigned value to switch the value + from little endian to big endian or vice versa. The byte swapped value is + returned. + + @param Operand A 16-bit unsigned value. + + @return The byte swaped Operand. + +**/ +UINT16 +EFIAPI +SwapBytes16 ( + IN UINT16 Operand + ) +{ + return (UINT16) ((Operand << 8) | (Operand >> 8)); +}