audk/MdePkg/Library/BaseMemoryLib
Ard Biesheuvel 01f688be90 MdePkg/BaseMemoryLib: widen aligned accesses to 32 or 64 bits
Since the default BaseMemoryLib should be callable from any context,
including ones where unaligned accesses are not allowed, it implements
InternalCopyMem() and InternalSetMem() using byte accesses only.
However, especially in a context where the MMU is off, such narrow
accesses may be disproportionately costly, and so if the size and
alignment of the access allow it, use 32-bit or even 64-bit loads and
stores (the latter may be beneficial even on a 32-bit architectures like
ARM, which has load pair/store pair instructions)

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Liming Gao <liming.gao@intel.com>
2016-09-13 16:28:15 +01:00
..
BaseMemoryLib.inf MdePkg/BaseMemoryLib: widen aligned accesses to 32 or 64 bits 2016-09-13 16:28:15 +01:00
BaseMemoryLib.uni MdePkg: Convert all .uni files to utf-8 2015-12-15 04:53:50 +00:00
CompareMemWrapper.c 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) 2010-06-24 20:11:34 +00:00
CopyMem.c MdePkg/BaseMemoryLib: widen aligned accesses to 32 or 64 bits 2016-09-13 16:28:15 +01:00
CopyMemWrapper.c 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) 2010-06-24 20:11:34 +00:00
IsZeroBufferWrapper.c MdePkg BaseMemoryLib: Add C implementation of API IsZeroBuffer() 2016-08-22 18:54:30 +08:00
MemLibGeneric.c MdePkg BaseMemoryLib: Add C implementation of API IsZeroBuffer() 2016-08-22 18:54:30 +08:00
MemLibGuid.c MdePkg BaseMemoryLib: Add implementation of API IsZeroGuid() 2016-08-22 18:54:29 +08:00
MemLibInternals.h MdePkg BaseMemoryLib: Add C implementation of API IsZeroBuffer() 2016-08-22 18:54:30 +08:00
ScanMem8Wrapper.c 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) 2010-06-25 21:56:02 +00:00
ScanMem16Wrapper.c 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) 2010-06-24 20:11:34 +00:00
ScanMem32Wrapper.c 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) 2010-06-24 20:11:34 +00:00
ScanMem64Wrapper.c 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) 2010-06-24 20:11:34 +00:00
SetMem.c MdePkg/BaseMemoryLib: widen aligned accesses to 32 or 64 bits 2016-09-13 16:28:15 +01:00
SetMem16Wrapper.c 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) 2010-06-24 20:11:34 +00:00
SetMem32Wrapper.c 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) 2010-06-24 20:11:34 +00:00
SetMem64Wrapper.c 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) 2010-06-24 20:11:34 +00:00
SetMemWrapper.c 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) 2010-06-24 20:11:34 +00:00
ZeroMemWrapper.c 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) 2010-06-24 20:11:34 +00:00