Commit Graph

21 Commits

Author SHA1 Message Date
Hao Wu 9088c61e2d MdePkg/MemoryLib: Refine InternalMemSetMem16|32|64 functions logic
This commit refines the logic for InternalMemSetMem16|32|64 functions. It
avoids using the decrement operator '--' for array index to prevent
possible mis-reports by static code checkers.

Please note that those modified functions are only consumed within
MemoryLib by APIs SetMem16|32|64, and those APIs will handle the case when
the input number of bytes to set is 0. Hence, the behavior of APIs
SetMem16|32|64 is not changed.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-12-22 16:17:16 +08:00
Hao Wu 1944b02b03 MdePkg BaseMemoryLib: Add C implementation of API IsZeroBuffer()
Add the implementation of API IsZeroBuffer() via C language for the
following library instances:
BaseMemoryLib
PeiMemoryLib
UefiMemoryLib

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-22 18:54:30 +08:00
darylm503 af072124e4 Fix InternalMemScanMem* functions so that they return the pointer to the matched object, as specified, instead of the following object.
Replaces the fix instituted in rev. 10821 with a more understandable, sustainable, and efficient fix that behaves the same regardless of compiler.

Reviewed by two peers.
Fixes HSD tracker 204556.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11237 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-07 23:00:16 +00:00
darylm503 ffadc63799 Fix the InternalMemScanMem* functions. They were returning the character AFTER the match instead of the matching character.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10821 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-25 23:06:43 +00:00
myronporter 2fc59a003e Minor grammatical work--mostly adding periods. Items with ONLY period added 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-06-25 21:56:02 +00:00
myronporter 15c952e728 Minor grammatical work--mostly adding periods. Items with ONLY period added 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@10597 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-24 20:11:34 +00:00
hhtian 2fcf0abf44 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10406 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-23 16:04:26 +00:00
qhuang8 1fef058f4b clean up all of eight BaseMemoryLib instances in MdePkg with the following 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-08-11 15:32:16 +00:00
eric_tian d531bfee01 CodeReview for MdePkg/BaseMemoryXXX libraries. Refine file description, function comments and move some redundant logic.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6167 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-21 06:52:21 +00:00
lgao4 2bfb60098f 1. Change 0 == Length style to Length == 0
2. Clean BasePeCoff library instance, only keep one copy PeCoffLoaderEx.c file for IA32, X64 and IPF arch
3. Clean the confused comments

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5927 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-18 14:27:39 +00:00
vanjeff 1efcc4ae46 remove unnecessary comments introduced by tools from MdePkg. The regular express is "//^p//[ ]Include[ ]common[ ]header[ ]file[ ]for[ ]this[ ]module[.]^p//"
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5911 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 07:46:17 +00:00
yshang1 42eedea958 Code Scrub for MdePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5567 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-25 12:21:57 +00:00
AJFISH d5b86e43cf Removed MdePkg usage of ModuleName: in file headers
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3217 6f19259b-4bc3-4df7-8a09-765794883524
2007-07-12 22:59:43 +00:00
AJFISH f734a10ab1 Removed CommonHeader.h generated file from the MdePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2922 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-29 23:22:13 +00:00
vanjeff e1f414b6a7 Import some basic libraries instances for Mde Packages.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2704 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-22 03:21:45 +00:00
lhauch 586cd1f1f4 Moved the MdePkg to OldMdePkg so that new code in MdePkg does not break existing builds. Also updated the SPD and FPD files UiNames
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2616 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-01 14:49:55 +00:00
qhuang8 add13dc217 DebugLib:
Fix a bug in PeiDxeDebugLibReportStatusCode: it should use gReportStatusCodeDebugType so that report status code infrastructure can correctly extract debug info.
	Fix functional and coding style issues in the three instances in EdkModulePkg, namely: EdkDxeDebugLibReportStatusCode, EdkUefiDebugLibStderr, EdkUefiDebugLibConout.
	DevicePathLib:
	Sync with MWG 0.57 and add new interface of CreateDevicePathNode(). All the function headers have been updated.
	PeiServicesLib:
	Adjust coding style and fix a minor comment error.
	PciLib:
	Adjust assert() condition to sync with MWG 0.57
	BaseMemoryLib:
	Adjust assert() for ScanMemXX (), ScanGuid()
	Rename UefiMemoryLib to DxeMemoryLib
	PrintLib:
	Change the return value of all print services to exclude the NULL-terminator.
	Misc:
	Slightly adjust the coding style in hob.c in PeiCore module.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@757 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-05 04:17:04 +00:00
qhuang8 24e25d11c0 • BaseMemoryLib:
Modify some Aassert()s conditions to sync with MWG 0.56d
	Modify some defects in function header.
•	PostCodeLib:
Implement PeiDxePostCodeLibReportStatusCode.
•	Misc
Rename BaseDebugLibReportStatusCode to PeiDxeDebugLibReportStatusCode
	Remove tabs in all .c and .h files in MdePkg.
	Rename PeiServicesReinstallPpi() to PeiServicesReInstallPpi()
	Adjust some minor coding style in PeCoffLoaderGetEntryPointerLib()


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@626 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-26 10:18:28 +00:00
qhuang8 4ba61e5e2a 1. UINTN & INTN issue for EBC architecture:
The MAX_BIT of EBC will no longer be fixed to bit 63. It is defined as (1ULL << (sizeof (INTN) * 8 - 1)).
	Make EdkModulePkg & MdePkg EBC compiler clean: treat all EFI_STATUS error code as variable.
2. PrintLib
	Complete all missing ASSERT()s.
	Fix “\n” & “%\n” issue thanks to the clarification of MWG 0.56d.
	Adjust StatusString array to support EBC build.
3. BaseMemoryLib
	Adjust ASSERT () & function header of ComparaMem, SetMemXX, ScanMemXX to synchronize with MWG 0.56d.
4.SmbusLib
	Change Pec bit to bit 22 SmBusAddress to synchronize MWG 0.56d.
	Add ASSERT()s to check if length is illegal for SmBusBlockWrite() & SmBusProcessBlock() since it is 6 bit now.
5. PerformanceLib
	Rename “EdkDxePerformanceLib” & “EdkPeiPerformanceLib” to “DxePerformanceLib” & “PeiPerformanceLib” respectively.
	Synchronize the function header of GetPerformanceMeasurement() with MWG 0.56d.
6. BasePeCoffLoaderLib.
	Make PeCoffLoaderLoadImage () Assert() if ImageContext is NULL>
	Make PeCoffLoaderLoadImage () return RETURN_INVALID_PARAMETER if the ImageAddress in ImageContext is 0.
	Adjust some coding style.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@593 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-22 06:08:00 +00:00
bxing 24de7645e8 Split wrapper functions into separate source files to reduce image code size
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@168 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-16 03:26:32 +00:00
bbahnsen 878ddf1fc3 Initial import.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524
2006-04-21 22:54:32 +00:00