From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-x230.google.com (mail-wm0-x230.google.com [IPv6:2a00:1450:400c:c09::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 6B3D21A1E56 for ; Thu, 1 Sep 2016 05:58:29 -0700 (PDT) Received: by mail-wm0-x230.google.com with SMTP id v143so20517866wmv.0 for ; Thu, 01 Sep 2016 05:58:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=eYsbyXrZt48hF99UJOnDS5nApDZGITlcxT7yCjS8zmA=; b=PjmZROPXFlLJfnTxaEiA4MbvdVTirOejV8MqpnTtv0KkwqamE1bCgN2CxwAcn4LBLL ONSz7ihRgfzHRKUEhKcgjkF1XaNIZ+rfGrzfwgIGOfmNUkFKpGRDABAXo5Afd7IggbPF 9VEUB4p+YNeGgR+a784NaX2hl6CFZ+W0j5KIA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=eYsbyXrZt48hF99UJOnDS5nApDZGITlcxT7yCjS8zmA=; b=N2qZR3OQh+pmPAm4XNZ6NuqQx1F9y1I8vvPCRWctKRw8qHBe/cNTUpQg6sK0+Q/Bou Uhi/byZ7nhphctAySqNsGWrMa+a+sxsXIftaOLocC5of6XBLqp2WP0Ag7xbz6zoqusRu fGBNy+hidm9LzTH59AnKFYadgD/zDRi2ReySI8MBTUP5gHtDIrwvOd/868BI2h3mDX1p U/cP0DMuBrixCW+ZuiI8PLYQCaxOFYFmiuHc7VFAOG5jLuOLJhPq8Rvs5hmx3dnzXWMu s3U0XOYl8P2lrn72xLFPwOvI/jaWiVVTXTyj45KnZKyfMqM5+ZbZ1yDQx85+YvVLBm1/ 6kLw== X-Gm-Message-State: AE9vXwNJi/w/VhDAEwDlyArqm4JTKYMkzwSHkJkTuh+P16xz71LLWE3+oeozd+qxsbTCOF8b X-Received: by 10.194.119.100 with SMTP id kt4mr2935987wjb.122.1472734705523; Thu, 01 Sep 2016 05:58:25 -0700 (PDT) Received: from bivouac.eciton.net (bivouac.eciton.net. [2a00:1098:0:86:1000:23:0:2]) by smtp.gmail.com with ESMTPSA id d64sm14288353wmc.22.2016.09.01.05.58.24 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 01 Sep 2016 05:58:24 -0700 (PDT) Date: Thu, 1 Sep 2016 13:58:22 +0100 From: Leif Lindholm To: Ard Biesheuvel Cc: edk2-devel@lists.01.org Message-ID: <20160901125822.GW4715@bivouac.eciton.net> References: <1472634453-27246-1-git-send-email-ard.biesheuvel@linaro.org> <1472634453-27246-2-git-send-email-ard.biesheuvel@linaro.org> MIME-Version: 1.0 In-Reply-To: <1472634453-27246-2-git-send-email-ard.biesheuvel@linaro.org> User-Agent: Mutt/1.5.23 (2014-03-12) Subject: Re: [PATCH 1/3] ArmPkg: remove BaseMemoryLibVstm implementation of BaseMemoryLib X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Sep 2016 12:58:30 -0000 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Aug 31, 2016 at 10:07:31AM +0100, Ard Biesheuvel wrote: > The BaseMemoryLibVstm implementation of BaseMemoryLib is ARM only, uses > the NEON register file despite the fact that the UEFI spec does not allow > it, and is currently not used anywhere. So remove it. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Ard Biesheuvel So separate from the rest of the series, it would make sense to merge this one before moving BaseMemoryLibStm to MdePkg. Reviewed-by: Leif Lindholm . > --- > ArmPkg/ArmPkg.dsc | 2 - > ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S | 112 --------- > ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.asm | 114 --------- > ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S | 76 ------ > ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.asm | 78 ------ > ArmPkg/Library/BaseMemoryLibVstm/BaseMemoryLibVstm.inf | 70 ------ > ArmPkg/Library/BaseMemoryLibVstm/CompareMemWrapper.c | 66 ----- > ArmPkg/Library/BaseMemoryLibVstm/CopyMem.c | 62 ----- > ArmPkg/Library/BaseMemoryLibVstm/CopyMemWrapper.c | 63 ----- > ArmPkg/Library/BaseMemoryLibVstm/MemLibGeneric.c | 264 -------------------- > ArmPkg/Library/BaseMemoryLibVstm/MemLibGuid.c | 132 ---------- > ArmPkg/Library/BaseMemoryLibVstm/MemLibInternals.h | 234 ----------------- > ArmPkg/Library/BaseMemoryLibVstm/ScanMem16Wrapper.c | 67 ----- > ArmPkg/Library/BaseMemoryLibVstm/ScanMem32Wrapper.c | 66 ----- > ArmPkg/Library/BaseMemoryLibVstm/ScanMem64Wrapper.c | 67 ----- > ArmPkg/Library/BaseMemoryLibVstm/ScanMem8Wrapper.c | 99 -------- > ArmPkg/Library/BaseMemoryLibVstm/SetMem.c | 53 ---- > ArmPkg/Library/BaseMemoryLibVstm/SetMem16Wrapper.c | 64 ----- > ArmPkg/Library/BaseMemoryLibVstm/SetMem32Wrapper.c | 64 ----- > ArmPkg/Library/BaseMemoryLibVstm/SetMem64Wrapper.c | 64 ----- > ArmPkg/Library/BaseMemoryLibVstm/SetMemWrapper.c | 91 ------- > ArmPkg/Library/BaseMemoryLibVstm/ZeroMemWrapper.c | 52 ---- > 22 files changed, 1960 deletions(-) > > diff --git a/ArmPkg/ArmPkg.dsc b/ArmPkg/ArmPkg.dsc > index 7b278cdd4124..6f9fc661fbdc 100644 > --- a/ArmPkg/ArmPkg.dsc > +++ b/ArmPkg/ArmPkg.dsc > @@ -150,8 +150,6 @@ [Components.common] > ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf > > [Components.ARM] > - ArmPkg/Library/BaseMemoryLibVstm/BaseMemoryLibVstm.inf > - > ArmPkg/Drivers/ArmCpuLib/ArmCortexA8Lib/ArmCortexA8Lib.inf > ArmPkg/Drivers/ArmCpuLib/ArmCortexA9Lib/ArmCortexA9Lib.inf > ArmPkg/Drivers/ArmCpuLib/ArmCortexA15Lib/ArmCortexA15Lib.inf > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S b/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S > deleted file mode 100644 > index 69de4c1fd48e..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S > +++ /dev/null > @@ -1,112 +0,0 @@ > -#------------------------------------------------------------------------------ > -# > -# CopyMem() worker for ARM > -# > -# This file started out as C code that did 64 bit moves if the buffer was > -# 32-bit aligned, else it does a byte copy. It also does a byte copy for > -# any trailing bytes. Update using VSTM/SLDM to do 128 byte copies. > -# > -# Copyright (c) 2008 - 2010, Apple Inc. 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 > - > -/** > - Copy Length bytes from Source to Destination. Overlap is OK. > - > - This implementation > - > - @param Destination Target of copy > - @param Source Place to copy from > - @param Length Number of bytes to copy > - > - @return Destination > - > - > -VOID * > -EFIAPI > -InternalMemCopyMem ( > - OUT VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ) > -**/ > -ASM_FUNC(InternalMemCopyMem) > - stmfd sp!, {r4, r9, lr} > - tst r0, #3 > - mov r4, r0 > - mov r9, r0 > - mov ip, r2 > - mov lr, r1 > - movne r0, #0 > - bne L4 > - tst r1, #3 > - movne r3, #0 > - moveq r3, #1 > - cmp r2, #127 > - movls r0, #0 > - andhi r0, r3, #1 > -L4: > - cmp r4, r1 > - bcc L26 > - bls L7 > - rsb r3, r1, r4 > - cmp ip, r3 > - bcc L26 > - cmp ip, #0 > - beq L7 > - add r9, r4, ip > - add lr, ip, r1 > - b L16 > -L29: > - sub ip, ip, #8 > - cmp ip, #7 > - ldrd r2, [lr, #-8]! > - movls r0, #0 > - cmp ip, #0 > - strd r2, [r9, #-8]! > - beq L7 > -L16: > - cmp r0, #0 > - bne L29 > - sub r3, lr, #1 > - sub ip, ip, #1 > - ldrb r3, [r3, #0] > - sub r2, r9, #1 > - cmp ip, #0 > - sub r9, r9, #1 > - sub lr, lr, #1 > - strb r3, [r2, #0] > - bne L16 > - b L7 > -L11: > - ldrb r3, [lr], #1 > - sub ip, ip, #1 > - strb r3, [r9], #1 > -L26: > - cmp ip, #0 > - beq L7 > -L30: > - cmp r0, #0 > - beq L11 > - sub ip, ip, #128 // 32 > - cmp ip, #127 // 31 > - vldm lr!, {d0-d15} > - movls r0, #0 > - cmp ip, #0 > - vstm r9!, {d0-d15} > - bne L30 > -L7: > - dsb > - mov r0, r4 > - ldmfd sp!, {r4, r9, pc} > - > - > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.asm b/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.asm > deleted file mode 100644 > index 5afd1e5f2bc1..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.asm > +++ /dev/null > @@ -1,114 +0,0 @@ > -;------------------------------------------------------------------------------ > -; > -; CopyMem() worker for ARM > -; > -; This file started out as C code that did 64 bit moves if the buffer was > -; 32-bit aligned, else it does a byte copy. It also does a byte copy for > -; any trailing bytes. Update using VSTM/SLDM to do 128 byte copies. > -; > -; Copyright (c) 2008 - 2010, Apple Inc. 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. > -; > -;------------------------------------------------------------------------------ > - > -/** > - Copy Length bytes from Source to Destination. Overlap is OK. > - > - This implementation > - > - @param Destination Target of copy > - @param Source Place to copy from > - @param Length Number of bytes to copy > - > - @return Destination > - > - > -VOID * > -EFIAPI > -InternalMemCopyMem ( > - OUT VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ) > -**/ > - > - INCLUDE AsmMacroExport.inc > - > - RVCT_ASM_EXPORT InternalMemCopyMem > - stmfd sp!, {r4, r9, lr} > - tst r0, #3 > - mov r4, r0 > - mov r9, r0 > - mov ip, r2 > - mov lr, r1 > - movne r0, #0 > - bne L4 > - tst r1, #3 > - movne r3, #0 > - moveq r3, #1 > - cmp r2, #127 > - movls r0, #0 > - andhi r0, r3, #1 > -L4 > - cmp r4, r1 > - bcc L26 > - bls L7 > - rsb r3, r1, r4 > - cmp ip, r3 > - bcc L26 > - cmp ip, #0 > - beq L7 > - add r9, r4, ip > - add lr, ip, r1 > - b L16 > -L29 > - sub ip, ip, #8 > - cmp ip, #7 > - ldrd r2, [lr, #-8]! > - movls r0, #0 > - cmp ip, #0 > - strd r2, [r9, #-8]! > - beq L7 > -L16 > - cmp r0, #0 > - bne L29 > - sub r3, lr, #1 > - sub ip, ip, #1 > - ldrb r3, [r3, #0] > - sub r2, r9, #1 > - cmp ip, #0 > - sub r9, r9, #1 > - sub lr, lr, #1 > - strb r3, [r2, #0] > - bne L16 > - b L7 > -L11 > - ldrb r3, [lr], #1 > - sub ip, ip, #1 > - strb r3, [r9], #1 > -L26 > - cmp ip, #0 > - beq L7 > -L30 > - cmp r0, #0 > - beq L11 > - sub ip, ip, #128 // 32 > - cmp ip, #127 // 31 > - vldm lr!, {d0-d15} > - movls r0, #0 > - cmp ip, #0 > - vstm r9!, {d0-d15} > - bne L30 > -L7 > - dsb > - mov r0, r4 > - ldmfd sp!, {r4, r9, pc} > - > - END > - > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S b/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S > deleted file mode 100644 > index 28ba38b79c6a..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S > +++ /dev/null > @@ -1,76 +0,0 @@ > -#------------------------------------------------------------------------------ > -# > -# SemMem() worker for ARM > -# > -# This file started out as C code that did 64 bit moves if the buffer was > -# 32-bit aligned, else it does a byte copy. It also does a byte copy for > -# any trailing bytes. Update to use VSTM/VLDM to do 128 byte writes. > -# > -# Copyright (c) 2008 - 2010, Apple Inc. 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 > - > -/** > - Set Buffer to Value for Size bytes. > - > - @param Buffer Memory to set. > - @param Length Number of bytes to set > - @param Value Value of the set operation. > - > - @return Buffer > - > -VOID * > -EFIAPI > -InternalMemSetMem ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ) > -**/ > -ASM_FUNC(InternalMemSetMem) > - stmfd sp!, {r4-r7, lr} > - tst r0, #3 > - movne r3, #0 > - moveq r3, #1 > - cmp r1, #127 > - movls lr, #0 > - andhi lr, r3, #1 > - cmp lr, #0 > - mov r12, r0 > - bne L31 > -L32: > - mov r3, #0 > - b L43 > -L31: > - vdup.8 q0,r2 > - vmov q1,q0 > - vmov q2,q0 > - vmov q3,q0 > - vmov q4,q0 > - vmov q5,q0 > - vmov q6,q0 > - vmov q7,q0 > - b L32 > -L34: > - cmp lr, #0 > - streqb r2, [r12], #1 > - subeq r1, r1, #1 > - beq L43 > - sub r1, r1, #128 > - cmp r1, #127 > - cmp r1, #31 > - movls lr, r3 > - vstm r12!, {d0-d15} > -L43: > - cmp r1, #0 > - bne L34 > - ldmfd sp!, {pc} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.asm b/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.asm > deleted file mode 100644 > index c4a7c2b72008..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.asm > +++ /dev/null > @@ -1,78 +0,0 @@ > -;------------------------------------------------------------------------------ > -; > -; SetMem() worker for ARM > -; > -; This file started out as C code that did 64 bit moves if the buffer was > -; 32-bit aligned, else it does a byte copy. It also does a byte copy for > -; any trailing bytes. Update to use VSTM/VLDM to do 128 byte writes. > -; > -; Copyright (c) 2008 - 2010, Apple Inc. 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. > -; > - > -/** > - Set Buffer to Value for Size bytes. > - > - @param Buffer Memory to set. > - @param Length Number of bytes to set > - @param Value Value of the set operation. > - > - @return Buffer > - > -VOID * > -EFIAPI > -InternalMemSetMem ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ) > -**/ > - > - > - INCLUDE AsmMacroExport.inc > - > - RVCT_ASM_EXPORT InternalMemSetMem > - stmfd sp!, {lr} > - tst r0, #3 > - movne r3, #0 > - moveq r3, #1 > - cmp r1, #127 > - movls lr, #0 > - andhi lr, r3, #1 > - cmp lr, #0 > - mov r12, r0 > - bne L31 > -L32 > - mov r3, #0 > - b L43 > -L31 > - vdup.8 q0,r2 > - vmov q1,q0 > - vmov q2,q0 > - vmov q3,q0 > - vmov q4,q0 > - vmov q5,q0 > - vmov q6,q0 > - vmov q7,q0 > - b L32 > -L34 > - cmp lr, #0 > - streqb r2, [r12], #1 > - subeq r1, r1, #1 > - beq L43 > - sub r1, r1, #128 > - cmp r1, #127 > - movls lr, r3 > - vstm r12!, {d0-d15} > -L43 > - cmp r1, #0 > - bne L34 > - ldmfd sp!, {pc} > - > - END > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/BaseMemoryLibVstm.inf b/ArmPkg/Library/BaseMemoryLibVstm/BaseMemoryLibVstm.inf > deleted file mode 100644 > index 4c388fa8984d..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/BaseMemoryLibVstm.inf > +++ /dev/null > @@ -1,70 +0,0 @@ > -## @file > -# Instance of Base Memory Library with some ARM vldm/vstm assembly. > -# > -# This is a copy of the MdePkg BaseMemoryLib with the CopyMem and > -# SetMem worker functions replaced with assembler that uses > -# vldm/vstm (part of NEON SIMD, optional in ARMv7-A). > -# > -# Note: You need to enable NEON in SEC to use this library > -# // Enable NEON register in case folks want to use them for optimizations (CopyMem) > -# mrc p15, 0, r0, c1, c0, 2 > -# orr r0, r0, #0x00f00000 // Enable VPF access (V* instructions) > -# mcr p15, 0, r0, c1, c0, 2 > -# mov r0, #0x40000000 // Set EN bit in FPEXC > -# msr FPEXC,r0 > -# > -# Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.
> -# Portions copyright (c) 2010, Apple Inc. 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. > -# > -# > -## > - > -[Defines] > - INF_VERSION = 0x00010005 > - BASE_NAME = BaseMemoryLibVstm > - FILE_GUID = 09EE1E8D-7A2E-4573-8117-68A18569C1F5 > - MODULE_TYPE = BASE > - VERSION_STRING = 1.0 > - LIBRARY_CLASS = BaseMemoryLib > - > - > -# > -# VALID_ARCHITECTURES = ARM > -# > - > -[Sources.ARM] > - ScanMem64Wrapper.c > - ScanMem32Wrapper.c > - ScanMem16Wrapper.c > - ScanMem8Wrapper.c > - ZeroMemWrapper.c > - CompareMemWrapper.c > - SetMem64Wrapper.c > - SetMem32Wrapper.c > - SetMem16Wrapper.c > - SetMemWrapper.c > - CopyMemWrapper.c > - MemLibGeneric.c > - MemLibGuid.c > - MemLibInternals.h > - Arm/CopyMem.asm > - Arm/CopyMem.S > - Arm/SetMem.asm > - Arm/SetMem.S > - > - > -[Packages] > - MdePkg/MdePkg.dec > - ArmPkg/ArmPkg.dec > - > -[LibraryClasses] > - DebugLib > - BaseLib > - > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/CompareMemWrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/CompareMemWrapper.c > deleted file mode 100644 > index c83988f59ecb..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/CompareMemWrapper.c > +++ /dev/null > @@ -1,66 +0,0 @@ > -/** @file > - CompareMem() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > -Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Compares the contents of two buffers. > - > - This function compares Length bytes of SourceBuffer to Length bytes of DestinationBuffer. > - If all Length bytes of the two buffers are identical, then 0 is returned. Otherwise, the > - value returned is the first mismatched byte in SourceBuffer subtracted from the first > - mismatched byte in DestinationBuffer. > - > - If Length > 0 and DestinationBuffer is NULL, then ASSERT(). > - If Length > 0 and SourceBuffer is NULL, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - DestinationBuffer + 1), then ASSERT(). > - If Length is greater than (MAX_ADDRESS - SourceBuffer + 1), then ASSERT(). > - > - @param DestinationBuffer Pointer to the destination buffer to compare. > - @param SourceBuffer Pointer to the source buffer to compare. > - @param Length Number of bytes to compare. > - > - @return 0 All Length bytes of the two buffers are identical. > - @retval Non-zero The first mismatched byte in SourceBuffer subtracted from the first > - mismatched byte in DestinationBuffer. > - > -**/ > -INTN > -EFIAPI > -CompareMem ( > - IN CONST VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ) > -{ > - if (Length == 0 || DestinationBuffer == SourceBuffer) { > - return 0; > - } > - ASSERT (DestinationBuffer != NULL); > - ASSERT (SourceBuffer != NULL); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)DestinationBuffer)); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)SourceBuffer)); > - > - return InternalMemCompareMem (DestinationBuffer, SourceBuffer, Length); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/CopyMem.c b/ArmPkg/Library/BaseMemoryLibVstm/CopyMem.c > deleted file mode 100644 > index b30faed5607d..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/CopyMem.c > +++ /dev/null > @@ -1,62 +0,0 @@ > -/** @file > - Implementation of the InternalMemCopyMem routine. This function is broken > - out into its own source file so that it can be excluded from a build for a > - particular platform easily if an optimized version is desired. > - > - Copyright (c) 2006 - 2008, 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 "MemLibInternals.h" > - > -/** > - Copy Length bytes from Source to Destination. > - > - @param DestinationBuffer Target of copy > - @param SourceBuffer Place to copy from > - @param Length Number of bytes to copy > - > - @return Destination > - > -**/ > -VOID * > -EFIAPI > -InternalMemCopyMem ( > - OUT VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ) > -{ > - // > - // Declare the local variables that actually move the data elements as > - // volatile to prevent the optimizer from replacing this function with > - // the intrinsic memcpy() > - // > - volatile UINT8 *Destination8; > - CONST UINT8 *Source8; > - > - if (SourceBuffer > DestinationBuffer) { > - Destination8 = (UINT8*)DestinationBuffer; > - Source8 = (CONST UINT8*)SourceBuffer; > - while (Length-- != 0) { > - *(Destination8++) = *(Source8++); > - } > - } else if (SourceBuffer < DestinationBuffer) { > - Destination8 = (UINT8*)DestinationBuffer + Length; > - Source8 = (CONST UINT8*)SourceBuffer + Length; > - while (Length-- != 0) { > - *(--Destination8) = *(--Source8); > - } > - } > - return DestinationBuffer; > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/CopyMemWrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/CopyMemWrapper.c > deleted file mode 100644 > index 2adfb3114910..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/CopyMemWrapper.c > +++ /dev/null > @@ -1,63 +0,0 @@ > -/** @file > - CopyMem() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Copies a source buffer to a destination buffer, and returns the destination buffer. > - > - This function copies Length bytes from SourceBuffer to DestinationBuffer, and returns > - DestinationBuffer. The implementation must be reentrant, and it must handle the case > - where SourceBuffer overlaps DestinationBuffer. > - > - If Length is greater than (MAX_ADDRESS - DestinationBuffer + 1), then ASSERT(). > - If Length is greater than (MAX_ADDRESS - SourceBuffer + 1), then ASSERT(). > - > - @param DestinationBuffer Pointer to the destination buffer of the memory copy. > - @param SourceBuffer Pointer to the source buffer of the memory copy. > - @param Length Number of bytes to copy from SourceBuffer to DestinationBuffer. > - > - @return DestinationBuffer. > - > -**/ > -VOID * > -EFIAPI > -CopyMem ( > - OUT VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ) > -{ > - if (Length == 0) { > - return DestinationBuffer; > - } > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)DestinationBuffer)); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)SourceBuffer)); > - > - if (DestinationBuffer == SourceBuffer) { > - return DestinationBuffer; > - } > - return InternalMemCopyMem (DestinationBuffer, SourceBuffer, Length); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/MemLibGeneric.c b/ArmPkg/Library/BaseMemoryLibVstm/MemLibGeneric.c > deleted file mode 100644 > index 54c27012955f..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/MemLibGeneric.c > +++ /dev/null > @@ -1,264 +0,0 @@ > -/** @file > - Architecture Independent Base Memory Library Implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - BaseMemoryLib > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Fills a target buffer with a 16-bit value, and returns the target buffer. > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Count of 16-bit value to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem16 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT16 Value > - ) > -{ > - do { > - ((UINT16*)Buffer)[--Length] = Value; > - } while (Length != 0); > - return Buffer; > -} > - > -/** > - Fills a target buffer with a 32-bit value, and returns the target buffer. > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Count of 32-bit value to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem32 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT32 Value > - ) > -{ > - do { > - ((UINT32*)Buffer)[--Length] = Value; > - } while (Length != 0); > - return Buffer; > -} > - > -/** > - Fills a target buffer with a 64-bit value, and returns the target buffer. > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Count of 64-bit value to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem64 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT64 Value > - ) > -{ > - do { > - ((UINT64*)Buffer)[--Length] = Value; > - } while (Length != 0); > - return Buffer; > -} > - > -/** > - Set Buffer to 0 for Size bytes. > - > - @param Buffer Memory to set. > - @param Length Number of bytes to set > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemZeroMem ( > - OUT VOID *Buffer, > - IN UINTN Length > - ) > -{ > - return InternalMemSetMem (Buffer, Length, 0); > -} > - > -/** > - Compares two memory buffers of a given length. > - > - @param DestinationBuffer First memory buffer > - @param SourceBuffer Second memory buffer > - @param Length Length of DestinationBuffer and SourceBuffer memory > - regions to compare. Must be non-zero. > - > - @return 0 All Length bytes of the two buffers are identical. > - @retval Non-zero The first mismatched byte in SourceBuffer subtracted from the first > - mismatched byte in DestinationBuffer. > - > -**/ > -INTN > -EFIAPI > -InternalMemCompareMem ( > - IN CONST VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ) > -{ > - while ((--Length != 0) && > - (*(INT8*)DestinationBuffer == *(INT8*)SourceBuffer)) { > - DestinationBuffer = (INT8*)DestinationBuffer + 1; > - SourceBuffer = (INT8*)SourceBuffer + 1; > - } > - return (INTN)*(UINT8*)DestinationBuffer - (INTN)*(UINT8*)SourceBuffer; > -} > - > -/** > - Scans a target buffer for an 8-bit value, and returns a pointer to the > - matching 8-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 8-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem8 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ) > -{ > - CONST UINT8 *Pointer; > - > - Pointer = (CONST UINT8*)Buffer; > - do { > - if (*Pointer == Value) { > - return Pointer; > - } > - Pointer++; > - } while (--Length != 0); > - return NULL; > -} > - > -/** > - Scans a target buffer for a 16-bit value, and returns a pointer to the > - matching 16-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 16-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem16 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT16 Value > - ) > -{ > - CONST UINT16 *Pointer; > - > - Pointer = (CONST UINT16*)Buffer; > - do { > - if (*Pointer == Value) { > - return Pointer; > - } > - Pointer++; > - } while (--Length != 0); > - return NULL; > -} > - > -/** > - Scans a target buffer for a 32-bit value, and returns a pointer to the > - matching 32-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 32-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem32 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT32 Value > - ) > -{ > - CONST UINT32 *Pointer; > - > - Pointer = (CONST UINT32*)Buffer; > - do { > - if (*Pointer == Value) { > - return Pointer; > - } > - Pointer++; > - } while (--Length != 0); > - return NULL; > -} > - > -/** > - Scans a target buffer for a 64-bit value, and returns a pointer to the > - matching 64-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 64-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem64 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT64 Value > - ) > -{ > - CONST UINT64 *Pointer; > - > - Pointer = (CONST UINT64*)Buffer; > - do { > - if (*Pointer == Value) { > - return Pointer; > - } > - Pointer++; > - } while (--Length != 0); > - return NULL; > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/MemLibGuid.c b/ArmPkg/Library/BaseMemoryLibVstm/MemLibGuid.c > deleted file mode 100644 > index dc9e2c319ba9..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/MemLibGuid.c > +++ /dev/null > @@ -1,132 +0,0 @@ > -/** @file > - Implementation of GUID functions. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Copies a source GUID to a destination GUID. > - > - This function copies the contents of the 128-bit GUID specified by SourceGuid to > - DestinationGuid, and returns DestinationGuid. > - > - If DestinationGuid is NULL, then ASSERT(). > - If SourceGuid is NULL, then ASSERT(). > - > - @param DestinationGuid Pointer to the destination GUID. > - @param SourceGuid Pointer to the source GUID. > - > - @return DestinationGuid. > - > -**/ > -GUID * > -EFIAPI > -CopyGuid ( > - OUT GUID *DestinationGuid, > - IN CONST GUID *SourceGuid > - ) > -{ > - WriteUnaligned64 ( > - (UINT64*)DestinationGuid, > - ReadUnaligned64 ((CONST UINT64*)SourceGuid) > - ); > - WriteUnaligned64 ( > - (UINT64*)DestinationGuid + 1, > - ReadUnaligned64 ((CONST UINT64*)SourceGuid + 1) > - ); > - return DestinationGuid; > -} > - > -/** > - Compares two GUIDs. > - > - This function compares Guid1 to Guid2. If the GUIDs are identical then TRUE is returned. > - If there are any bit differences in the two GUIDs, then FALSE is returned. > - > - If Guid1 is NULL, then ASSERT(). > - If Guid2 is NULL, then ASSERT(). > - > - @param Guid1 A pointer to a 128 bit GUID. > - @param Guid2 A pointer to a 128 bit GUID. > - > - @retval TRUE Guid1 and Guid2 are identical. > - @retval FALSE Guid1 and Guid2 are not identical. > - > -**/ > -BOOLEAN > -EFIAPI > -CompareGuid ( > - IN CONST GUID *Guid1, > - IN CONST GUID *Guid2 > - ) > -{ > - return (CompareMem(Guid1, Guid2, sizeof(GUID) == 0)) ? TRUE : FALSE; > -} > - > -/** > - Scans a target buffer for a GUID, and returns a pointer to the matching GUID > - in the target buffer. > - > - This function searches the target buffer specified by Buffer and Length from > - the lowest address to the highest address at 128-bit increments for the 128-bit > - GUID value that matches Guid. If a match is found, then a pointer to the matching > - GUID in the target buffer is returned. If no match is found, then NULL is returned. > - If Length is 0, then NULL is returned. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Buffer is not aligned on a 32-bit boundary, then ASSERT(). > - If Length is not aligned on a 128-bit boundary, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Number of bytes in Buffer to scan. > - @param Guid Value to search for in the target buffer. > - > - @return A pointer to the matching Guid in the target buffer or NULL otherwise. > - > -**/ > -VOID * > -EFIAPI > -ScanGuid ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN CONST GUID *Guid > - ) > -{ > - CONST GUID *GuidPtr; > - > - ASSERT (((UINTN)Buffer & (sizeof (Guid->Data1) - 1)) == 0); > - ASSERT (Length <= (MAX_ADDRESS - (UINTN)Buffer + 1)); > - ASSERT ((Length & (sizeof (*GuidPtr) - 1)) == 0); > - > - GuidPtr = (GUID*)Buffer; > - Buffer = GuidPtr + Length / sizeof (*GuidPtr); > - while (GuidPtr < (CONST GUID*)Buffer) { > - if (CompareGuid (GuidPtr, Guid)) { > - return (VOID*)GuidPtr; > - } > - GuidPtr++; > - } > - return NULL; > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/MemLibInternals.h b/ArmPkg/Library/BaseMemoryLibVstm/MemLibInternals.h > deleted file mode 100644 > index 10c741f2c311..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/MemLibInternals.h > +++ /dev/null > @@ -1,234 +0,0 @@ > -/** @file > - Declaration of internal functions for Base Memory Library. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - > - Copyright (c) 2006 - 2009, 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. > - > -**/ > - > -#ifndef __MEM_LIB_INTERNALS__ > -#define __MEM_LIB_INTERNALS__ > - > -#include > -#include > -#include > -#include > - > -/** > - Copy Length bytes from Source to Destination. > - > - @param DestinationBuffer Target of copy > - @param SourceBuffer Place to copy from > - @param Length Number of bytes to copy > - > - @return Destination > - > -**/ > -VOID * > -EFIAPI > -InternalMemCopyMem ( > - OUT VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ); > - > -/** > - Set Buffer to Value for Size bytes. > - > - @param Buffer Memory to set. > - @param Length Number of bytes to set > - @param Value Value of the set operation. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ); > - > -/** > - Fills a target buffer with a 16-bit value, and returns the target buffer. > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Count of 16-bit value to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem16 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT16 Value > - ); > - > -/** > - Fills a target buffer with a 32-bit value, and returns the target buffer. > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Count of 32-bit value to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem32 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT32 Value > - ); > - > -/** > - Fills a target buffer with a 64-bit value, and returns the target buffer. > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Count of 64-bit value to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem64 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT64 Value > - ); > - > -/** > - Set Buffer to 0 for Size bytes. > - > - @param Buffer Memory to set. > - @param Length Number of bytes to set > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemZeroMem ( > - OUT VOID *Buffer, > - IN UINTN Length > - ); > - > -/** > - Compares two memory buffers of a given length. > - > - @param DestinationBuffer First memory buffer > - @param SourceBuffer Second memory buffer > - @param Length Length of DestinationBuffer and SourceBuffer memory > - regions to compare. Must be non-zero. > - > - @return 0 All Length bytes of the two buffers are identical. > - @retval Non-zero The first mismatched byte in SourceBuffer subtracted from the first > - mismatched byte in DestinationBuffer. > - > -**/ > -INTN > -EFIAPI > -InternalMemCompareMem ( > - IN CONST VOID *DestinationBuffer, > - IN CONST VOID *SourceBuffer, > - IN UINTN Length > - ); > - > -/** > - Scans a target buffer for an 8-bit value, and returns a pointer to the > - matching 8-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 8-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem8 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ); > - > -/** > - Scans a target buffer for a 16-bit value, and returns a pointer to the > - matching 16-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 16-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem16 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT16 Value > - ); > - > -/** > - Scans a target buffer for a 32-bit value, and returns a pointer to the > - matching 32-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 32-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem32 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT32 Value > - ); > - > -/** > - Scans a target buffer for a 64-bit value, and returns a pointer to the > - matching 64-bit value in the target buffer. > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Count of 64-bit value to scan. Must be non-zero. > - @param Value Value to search for in the target buffer. > - > - @return Pointer to the first occurrence or NULL if not found. > - > -**/ > -CONST VOID * > -EFIAPI > -InternalMemScanMem64 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT64 Value > - ); > - > -#endif > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem16Wrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/ScanMem16Wrapper.c > deleted file mode 100644 > index 1c727b3e8077..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem16Wrapper.c > +++ /dev/null > @@ -1,67 +0,0 @@ > -/** @file > - ScanMem16() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Scans a target buffer for a 16-bit value, and returns a pointer to the matching 16-bit value > - in the target buffer. > - > - This function searches the target buffer specified by Buffer and Length from the lowest > - address to the highest address for a 16-bit value that matches Value. If a match is found, > - then a pointer to the matching byte in the target buffer is returned. If no match is found, > - then NULL is returned. If Length is 0, then NULL is returned. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Buffer is not aligned on a 16-bit boundary, then ASSERT(). > - If Length is not aligned on a 16-bit boundary, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Number of bytes in Buffer to scan. > - @param Value Value to search for in the target buffer. > - > - @return A pointer to the matching byte in the target buffer or NULL otherwise. > - > -**/ > -VOID * > -EFIAPI > -ScanMem16 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT16 Value > - ) > -{ > - if (Length == 0) { > - return NULL; > - } > - > - ASSERT (Buffer != NULL); > - ASSERT (((UINTN)Buffer & (sizeof (Value) - 1)) == 0); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - ASSERT ((Length & (sizeof (Value) - 1)) == 0); > - > - return (VOID*)InternalMemScanMem16 (Buffer, Length / sizeof (Value), Value); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem32Wrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/ScanMem32Wrapper.c > deleted file mode 100644 > index 79ab60ced84c..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem32Wrapper.c > +++ /dev/null > @@ -1,66 +0,0 @@ > -/** @file > - ScanMem32() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Scans a target buffer for a 32-bit value, and returns a pointer to the matching 32-bit value > - in the target buffer. > - > - This function searches the target buffer specified by Buffer and Length from the lowest > - address to the highest address for a 32-bit value that matches Value. If a match is found, > - then a pointer to the matching byte in the target buffer is returned. If no match is found, > - then NULL is returned. If Length is 0, then NULL is returned. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Buffer is not aligned on a 32-bit boundary, then ASSERT(). > - If Length is not aligned on a 32-bit boundary, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Number of bytes in Buffer to scan. > - @param Value Value to search for in the target buffer. > - > - @return A pointer to the matching byte in the target buffer or NULL otherwise. > - > -**/ > -VOID * > -EFIAPI > -ScanMem32 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT32 Value > - ) > -{ > - if (Length == 0) { > - return NULL; > - } > - > - ASSERT (Buffer != NULL); > - ASSERT (((UINTN)Buffer & (sizeof (Value) - 1)) == 0); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - ASSERT ((Length & (sizeof (Value) - 1)) == 0); > - > - return (VOID*)InternalMemScanMem32 (Buffer, Length / sizeof (Value), Value); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem64Wrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/ScanMem64Wrapper.c > deleted file mode 100644 > index d11e50b9d5f6..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem64Wrapper.c > +++ /dev/null > @@ -1,67 +0,0 @@ > -/** @file > - ScanMem64() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Scans a target buffer for a 64-bit value, and returns a pointer to the matching 64-bit value > - in the target buffer. > - > - This function searches the target buffer specified by Buffer and Length from the lowest > - address to the highest address for a 64-bit value that matches Value. If a match is found, > - then a pointer to the matching byte in the target buffer is returned. If no match is found, > - then NULL is returned. If Length is 0, then NULL is returned. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Buffer is not aligned on a 64-bit boundary, then ASSERT(). > - If Length is not aligned on a 64-bit boundary, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Number of bytes in Buffer to scan. > - @param Value Value to search for in the target buffer. > - > - @return A pointer to the matching byte in the target buffer or NULL otherwise. > - > -**/ > -VOID * > -EFIAPI > -ScanMem64 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT64 Value > - ) > -{ > - if (Length == 0) { > - return NULL; > - } > - > - ASSERT (Buffer != NULL); > - ASSERT (((UINTN)Buffer & (sizeof (Value) - 1)) == 0); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - ASSERT ((Length & (sizeof (Value) - 1)) == 0); > - > - return (VOID*)InternalMemScanMem64 (Buffer, Length / sizeof (Value), Value); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem8Wrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/ScanMem8Wrapper.c > deleted file mode 100644 > index c6c6d5f39ba4..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/ScanMem8Wrapper.c > +++ /dev/null > @@ -1,99 +0,0 @@ > -/** @file > - ScanMem8() and ScanMemN() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Scans a target buffer for an 8-bit value, and returns a pointer to the matching 8-bit value > - in the target buffer. > - > - This function searches the target buffer specified by Buffer and Length from the lowest > - address to the highest address for an 8-bit value that matches Value. If a match is found, > - then a pointer to the matching byte in the target buffer is returned. If no match is found, > - then NULL is returned. If Length is 0, then NULL is returned. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Number of bytes in Buffer to scan. > - @param Value Value to search for in the target buffer. > - > - @return A pointer to the matching byte in the target buffer or NULL otherwise. > - > -**/ > -VOID * > -EFIAPI > -ScanMem8 ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ) > -{ > - if (Length == 0) { > - return NULL; > - } > - ASSERT (Buffer != NULL); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - > - return (VOID*)InternalMemScanMem8 (Buffer, Length, Value); > -} > - > -/** > - Scans a target buffer for a UINTN sized value, and returns a pointer to the matching > - UINTN sized value in the target buffer. > - > - This function searches the target buffer specified by Buffer and Length from the lowest > - address to the highest address for a UINTN sized value that matches Value. If a match is found, > - then a pointer to the matching byte in the target buffer is returned. If no match is found, > - then NULL is returned. If Length is 0, then NULL is returned. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Buffer is not aligned on a UINTN boundary, then ASSERT(). > - If Length is not aligned on a UINTN boundary, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Pointer to the target buffer to scan. > - @param Length Number of bytes in Buffer to scan. > - @param Value Value to search for in the target buffer. > - > - @return A pointer to the matching byte in the target buffer or NULL otherwise. > - > -**/ > -VOID * > -EFIAPI > -ScanMemN ( > - IN CONST VOID *Buffer, > - IN UINTN Length, > - IN UINTN Value > - ) > -{ > - if (sizeof (UINTN) == sizeof (UINT64)) { > - return ScanMem64 (Buffer, Length, (UINT64)Value); > - } else { > - return ScanMem32 (Buffer, Length, (UINT32)Value); > - } > -} > - > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/SetMem.c b/ArmPkg/Library/BaseMemoryLibVstm/SetMem.c > deleted file mode 100644 > index 5c30e9b45f76..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/SetMem.c > +++ /dev/null > @@ -1,53 +0,0 @@ > -/** @file > - Implementation of the EfiSetMem routine. This function is broken > - out into its own source file so that it can be excluded from a > - build for a particular platform easily if an optimized version > - is desired. > - > - Copyright (c) 2006 - 2010, 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 "MemLibInternals.h" > - > -/** > - Set Buffer to Value for Size bytes. > - > - @param Buffer Memory to set. > - @param Length Number of bytes to set > - @param Value Value of the set operation. > - > - @return Buffer > - > -**/ > -VOID * > -EFIAPI > -InternalMemSetMem ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ) > -{ > - // > - // Declare the local variables that actually move the data elements as > - // volatile to prevent the optimizer from replacing this function with > - // the intrinsic memset() > - // > - volatile UINT8 *Pointer; > - > - Pointer = (UINT8*)Buffer; > - while (Length-- > 0) { > - *(Pointer++) = Value; > - } > - return Buffer; > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/SetMem16Wrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/SetMem16Wrapper.c > deleted file mode 100644 > index 8129d21e0dbe..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/SetMem16Wrapper.c > +++ /dev/null > @@ -1,64 +0,0 @@ > -/** @file > - SetMem16() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Fills a target buffer with a 16-bit value, and returns the target buffer. > - > - This function fills Length bytes of Buffer with the 16-bit value specified by > - Value, and returns Buffer. Value is repeated every 16-bits in for Length > - bytes of Buffer. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - If Buffer is not aligned on a 16-bit boundary, then ASSERT(). > - If Length is not aligned on a 16-bit boundary, then ASSERT(). > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Number of bytes in Buffer to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer. > - > -**/ > -VOID * > -EFIAPI > -SetMem16 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT16 Value > - ) > -{ > - if (Length == 0) { > - return Buffer; > - } > - > - ASSERT (Buffer != NULL); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - ASSERT ((((UINTN)Buffer) & (sizeof (Value) - 1)) == 0); > - ASSERT ((Length & (sizeof (Value) - 1)) == 0); > - > - return InternalMemSetMem16 (Buffer, Length / sizeof (Value), Value); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/SetMem32Wrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/SetMem32Wrapper.c > deleted file mode 100644 > index b57ba4057af6..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/SetMem32Wrapper.c > +++ /dev/null > @@ -1,64 +0,0 @@ > -/** @file > - SetMem32() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Fills a target buffer with a 32-bit value, and returns the target buffer. > - > - This function fills Length bytes of Buffer with the 32-bit value specified by > - Value, and returns Buffer. Value is repeated every 32-bits in for Length > - bytes of Buffer. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - If Buffer is not aligned on a 32-bit boundary, then ASSERT(). > - If Length is not aligned on a 32-bit boundary, then ASSERT(). > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Number of bytes in Buffer to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer. > - > -**/ > -VOID * > -EFIAPI > -SetMem32 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT32 Value > - ) > -{ > - if (Length == 0) { > - return Buffer; > - } > - > - ASSERT (Buffer != NULL); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - ASSERT ((((UINTN)Buffer) & (sizeof (Value) - 1)) == 0); > - ASSERT ((Length & (sizeof (Value) - 1)) == 0); > - > - return InternalMemSetMem32 (Buffer, Length / sizeof (Value), Value); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/SetMem64Wrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/SetMem64Wrapper.c > deleted file mode 100644 > index f979580b1739..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/SetMem64Wrapper.c > +++ /dev/null > @@ -1,64 +0,0 @@ > -/** @file > - SetMem64() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Fills a target buffer with a 64-bit value, and returns the target buffer. > - > - This function fills Length bytes of Buffer with the 64-bit value specified by > - Value, and returns Buffer. Value is repeated every 64-bits in for Length > - bytes of Buffer. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - If Buffer is not aligned on a 64-bit boundary, then ASSERT(). > - If Length is not aligned on a 64-bit boundary, then ASSERT(). > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Number of bytes in Buffer to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer. > - > -**/ > -VOID * > -EFIAPI > -SetMem64 ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT64 Value > - ) > -{ > - if (Length == 0) { > - return Buffer; > - } > - > - ASSERT (Buffer != NULL); > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - ASSERT ((((UINTN)Buffer) & (sizeof (Value) - 1)) == 0); > - ASSERT ((Length & (sizeof (Value) - 1)) == 0); > - > - return InternalMemSetMem64 (Buffer, Length / sizeof (Value), Value); > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/SetMemWrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/SetMemWrapper.c > deleted file mode 100644 > index 9240c89e8b87..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/SetMemWrapper.c > +++ /dev/null > @@ -1,91 +0,0 @@ > -/** @file > - SetMem() and SetMemN() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Fills a target buffer with a byte value, and returns the target buffer. > - > - This function fills Length bytes of Buffer with Value, and returns Buffer. > - > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Memory to set. > - @param Length Number of bytes to set. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer. > - > -**/ > -VOID * > -EFIAPI > -SetMem ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINT8 Value > - ) > -{ > - if (Length == 0) { > - return Buffer; > - } > - > - ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer)); > - > - return InternalMemSetMem (Buffer, Length, Value); > -} > - > -/** > - Fills a target buffer with a value that is size UINTN, and returns the target buffer. > - > - This function fills Length bytes of Buffer with the UINTN sized value specified by > - Value, and returns Buffer. Value is repeated every sizeof(UINTN) bytes for Length > - bytes of Buffer. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - If Buffer is not aligned on a UINTN boundary, then ASSERT(). > - If Length is not aligned on a UINTN boundary, then ASSERT(). > - > - @param Buffer Pointer to the target buffer to fill. > - @param Length Number of bytes in Buffer to fill. > - @param Value Value with which to fill Length bytes of Buffer. > - > - @return Buffer. > - > -**/ > -VOID * > -EFIAPI > -SetMemN ( > - OUT VOID *Buffer, > - IN UINTN Length, > - IN UINTN Value > - ) > -{ > - if (sizeof (UINTN) == sizeof (UINT64)) { > - return SetMem64 (Buffer, Length, (UINT64)Value); > - } else { > - return SetMem32 (Buffer, Length, (UINT32)Value); > - } > -} > diff --git a/ArmPkg/Library/BaseMemoryLibVstm/ZeroMemWrapper.c b/ArmPkg/Library/BaseMemoryLibVstm/ZeroMemWrapper.c > deleted file mode 100644 > index d6c6279f682f..000000000000 > --- a/ArmPkg/Library/BaseMemoryLibVstm/ZeroMemWrapper.c > +++ /dev/null > @@ -1,52 +0,0 @@ > -/** @file > - ZeroMem() implementation. > - > - The following BaseMemoryLib instances contain the same copy of this file: > - > - BaseMemoryLib > - BaseMemoryLibMmx > - BaseMemoryLibSse2 > - BaseMemoryLibRepStr > - BaseMemoryLibOptDxe > - BaseMemoryLibOptPei > - PeiMemoryLib > - UefiMemoryLib > - > - Copyright (c) 2006 - 2009, 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 "MemLibInternals.h" > - > -/** > - Fills a target buffer with zeros, and returns the target buffer. > - > - This function fills Length bytes of Buffer with zeros, and returns Buffer. > - > - If Length > 0 and Buffer is NULL, then ASSERT(). > - If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). > - > - @param Buffer Pointer to the target buffer to fill with zeros. > - @param Length Number of bytes in Buffer to fill with zeros. > - > - @return Buffer. > - > -**/ > -VOID * > -EFIAPI > -ZeroMem ( > - OUT VOID *Buffer, > - IN UINTN Length > - ) > -{ > - ASSERT (!(Buffer == NULL && Length > 0)); > - ASSERT (Length <= (MAX_ADDRESS - (UINTN)Buffer + 1)); > - return InternalMemZeroMem (Buffer, Length); > -} > -- > 2.7.4 >