summaryrefslogtreecommitdiff
path: root/MdePkg/Library/BaseMemoryLibRepStr
AgeCommit message (Collapse)AuthorFilesLines
2024-09-11Refactor SetMemWrapper to reduce binary sizeAshraf Ali3-35/+56
Moved SetMemN API to a separate file to eliminate unnecessary inclusion of InternalMemSetMem64 and InternalMemSetMem32 APIs in driver binary. When the compiler linking the Object files it may not remove all the unused from NASM OBJs. This change is to reorganize the C files to minimize the impact of the NASM behavior resulting is code size reduction. Signed-off-by: Ashraf Ali <ashraf.ali.s@intel.com>
2024-08-31MdePkg: Remove duplicate source from BaseMemoryLib INF filesAshraf Ali1-22/+0
Signed-off-by: Ashraf Ali <ashraf.ali.s@intel.com>
2021-12-07MdePkg: Apply uncrustify changesMichael Kubacki8-54/+59
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 Apply uncrustify changes to .c/.h files in the MdePkg package Cc: Andrew Fish <afish@apple.com> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
2019-04-09MdePkg: Replace BSD License with BSD+Patent LicenseMichael D Kinney40-278/+40
https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2019-04-03MdePkg/BaseMemoryLibRepStr: Remove .S files for IA32 and X64 archShenglei Zhang23-1180/+0
.nasm file has been added for X86 arch. .S assembly code is not required any more. https://bugzilla.tianocore.org/show_bug.cgi?id=1594 Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2018-06-28MdePkg: Clean up source filesLiming Gao14-36/+36
1. Do not use tab characters 2. No trailing white space in one line 3. All files must end with CRLF Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com>
2018-06-07MdePkg: Remove X86 ASM and S filesLiming Gao23-1162/+1
NASM has replaced ASM and S files. 1. Remove ASM from all modules. 2. Remove S files from the drivers only. 3. https://bugzilla.tianocore.org/show_bug.cgi?id=881 After NASM is updated, S files can be removed from Library. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-04MdePkg/BaseMemoryLib*: check for zero length in ZeroMem ()Ard Biesheuvel1-1/+5
Unlike other string functions in this library, ZeroMem () does not return early when the length of the input buffer is 0. So add the same to ZeroMem () as well, for all implementations of BaseMemoryLib living under MdePkg/ This fixes an issue with the ARM implementation of BaseMemoryLibOPtDxe, whose InternalMemZeroMem code does not expect a length of 0, and always writes at least a single byte. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Acked-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2016-08-22MdePkg BaseMemoryLib: Add assembly implementation of API IsZeroBuffer()Hao Wu5-2/+186
Add the implementation of API IsZeroBuffer() via assembly for the following library instances: BaseMemoryLibMmx BaseMemoryLibOptDxe BaseMemoryLibOptPei BaseMemoryLibRepStr Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2016-08-22MdePkg BaseMemoryLib: Add implementation of API IsZeroGuid()Hao Wu1-1/+30
Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/CopyMem.asm to NASMJordan Justen2-0/+67
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/CopyMem.asm to X64/CopyMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/SetMem.asm to NASMJordan Justen2-0/+48
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/SetMem.asm to X64/SetMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/SetMem16.asm to NASMJordan Justen2-0/+48
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/SetMem16.asm to X64/SetMem16.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/SetMem32.asm to NASMJordan Justen2-0/+48
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/SetMem32.asm to X64/SetMem32.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/SetMem64.asm to NASMJordan Justen2-0/+47
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/SetMem64.asm to X64/SetMem64.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/ZeroMem.asm to NASMJordan Justen2-0/+51
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/ZeroMem.asm to X64/ZeroMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/CompareMem.asm to NASMJordan Justen2-0/+60
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/CompareMem.asm to X64/CompareMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/ScanMem8.asm to NASMJordan Justen2-0/+57
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/ScanMem8.asm to X64/ScanMem8.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/ScanMem16.asm to NASMJordan Justen2-0/+57
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/ScanMem16.asm to X64/ScanMem16.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/ScanMem32.asm to NASMJordan Justen2-0/+57
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/ScanMem32.asm to X64/ScanMem32.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert X64/ScanMem64.asm to NASMJordan Justen2-0/+57
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/ScanMem64.asm to X64/ScanMem64.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/CopyMem.asm to NASMJordan Justen2-0/+66
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/CopyMem.asm to Ia32/CopyMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/SetMem.asm to NASMJordan Justen2-0/+46
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/SetMem.asm to Ia32/SetMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/SetMem16.asm to NASMJordan Justen2-0/+46
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/SetMem16.asm to Ia32/SetMem16.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/SetMem32.asm to NASMJordan Justen2-0/+46
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/SetMem32.asm to Ia32/SetMem32.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/SetMem64.asm to NASMJordan Justen2-0/+50
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/SetMem64.asm to Ia32/SetMem64.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/ZeroMem.asm to NASMJordan Justen2-0/+51
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/ZeroMem.asm to Ia32/ZeroMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/CompareMem.asm to NASMJordan Justen2-0/+59
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/CompareMem.asm to Ia32/CompareMem.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/ScanMem8.asm to NASMJordan Justen2-0/+58
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/ScanMem8.asm to Ia32/ScanMem8.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/ScanMem16.asm to NASMJordan Justen2-0/+58
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/ScanMem16.asm to Ia32/ScanMem16.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/ScanMem32.asm to NASMJordan Justen2-0/+58
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/ScanMem32.asm to Ia32/ScanMem32.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28MdePkg BaseMemoryLibRepStr: Convert Ia32/ScanMem64.asm to NASMJordan Justen2-0/+67
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/ScanMem64.asm to Ia32/ScanMem64.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2015-12-15MdePkg: Convert all .uni files to utf-8Jordan Justen1-0/+0
To convert these files I ran: $ python3 BaseTools/Scripts/ConvertUni.py MdePkg Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19256 6f19259b-4bc3-4df7-8a09-765794883524
2015-04-27MdePkg/BaseMemoryLibRepStr: Support IA32 processors without CMOVxMichael Kinney9-18/+34
Remove use of CMOVx instruction from IA32 assembly files in BaseMemoryLibRepStr. This matches compiler flags for all supported C compilers. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17214 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-03MdePkg: Convert non DOS format files to DOS formatGao, Liming1-0/+0
Module UNI and Package UNI files are not DOS format. Convert them to DOS format. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gao, Liming <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16042 6f19259b-4bc3-4df7-8a09-765794883524
2014-08-27MdePkg: INF/DEC file updates to EDK II packagesGao, Liming1-0/+0
2. Add MODULE_UNI_FILE file that contains the localized Abstract and Description of a module. a. Addresses an information gap between INF files and the UEFI Distribution Packaging Specification XML schema b. There will be an associated update to UPT in BaseTools to consume MODULE_UNI_FILE and associated UNI file during UDP creation that performs the INF -> XML conversion. c. There will be an associated update to UPT in BaseTools to produce MODULE_UNI_FILE and associated UNI file during UDP installation that performs the XML -> INF conversion. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gao, Liming <liming.gao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15918 6f19259b-4bc3-4df7-8a09-765794883524
2014-08-27MdePkg: INF/DEC file updates to EDK II packagesGao, Liming1-1/+2
1. Usage information in INF file comment blocks are either incomplete or incorrect. This includes usage information for Protocols/PPIs/GUIDs/PCDs/HOBs/Events/BootModes. The syntax for usage information in comment blocks is defined in the EDK II Module Information (INF) Specification Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gao, Liming <liming.gao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15917 6f19259b-4bc3-4df7-8a09-765794883524
2014-08-11MdePkg: Fix Clang build failureGao, Liming1-1/+1
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gao, Liming <liming.gao@intel.com> Reviewed-by: Andrew Fish <afish@apple.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15784 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-25Minor grammatical work--mostly adding periods. Items with ONLY period added ↵myronporter58-147/+147
did not have the heading date changed, but Items with content changes had heading copyright dates updated. Sending separately a list of files missing Doxygen @param and @return information. (PENDING) git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10604 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-23Update the copyright notice formathhtian58-116/+116
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10410 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-241. Correct File header to ## @filelgao41-4/+4
2. Remove unnecessary .common] postfix on section. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10052 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-071. fix the wrong description, change "target the buffer" to "the target buffer"eric_tian6-8/+10
2. fix ICC/GYGGCC build failure on ScanMemN() in X64 arch, it can not reach the last sentence when UINTN is equal to UINT64. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9530 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-05Add SetMemN() and ScanMemN() to the BaseMemoryLib class and all ↵mdkinney2-2/+71
BaseMemoryLib implementations git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9517 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-11clean up all of eight BaseMemoryLib instances in MdePkg with the following ↵qhuang824-169/+146
updates: 1. Remove .intel_syntax directives in GCC assembly files. All these assembly files have been updated to use the preferred syntax for GAS 2. Correct the incorrect comments for internal worker functions for SetMemXX() and ScanMemXX(). The Length parameter is actually the counter of 16-bit, 32-bit or 64-bit value. 3. Simplify the logic in ZeroMemoryWrapper.c for BaseMemoryLibOptPei instance to remove the conditional statement for zero length. This logic is already covered by worker function InternalMemZeroMem(). 4. Cleanup all the Wrapper C files in BaseMemoryLib instances. They are supposed to be shared by all these 8 BaseMemoryLib instances, but are out-of-sync after some maintenance. This patch re-syncs them and makes them exactly the same. 5. Cleanup MemLibInternal.h so that it is shared by 6 BaseMemoryLib instance except for PeiMemoryLib and UefiMemoryLib. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9041 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-20Replace .globl with ASM_GLOBALxli2422-22/+22
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8346 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-15cleanup the .S file to wrap all public symbols with ASM_PFX() macro,which is ↵eric_tian11-22/+22
used to generate underscore prior to public symbol or not within various GCC distribution versions. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8316 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-09INF file verified, and Coding Style reviewed.gikidy1-3/+3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7232 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-29Update copyright for files modified in this yearqhuang838-38/+38
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7148 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-11Synchronize MdePkg h files to Library/Base* c files.gikidy1-2/+2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6984 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-25Synchronize function comment in ↵gikidy9-47/+38
MdePkg\Library\BaseMemoryLib.h,CacheMaintenanceLib.h with the c file instance of this functions. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6721 6f19259b-4bc3-4df7-8a09-765794883524