X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdePkg%2FLibrary%2FBaseMemoryLib%2FSetMem32Wrapper.c;h=15f8205ebc2c88ed16ca0bcc18f8c0208155cfdf;hb=add13dc21720eff1a37fdea34c0fef190e2ad37d;hp=7217b6ef9b126d5316b5a1fd6b31ef93f7b01878;hpb=608fd3fd6159e8bcbf6f55926fc805e175d168eb;p=mirror_edk2.git diff --git a/MdePkg/Library/BaseMemoryLib/SetMem32Wrapper.c b/MdePkg/Library/BaseMemoryLib/SetMem32Wrapper.c index 7217b6ef9b..15f8205ebc 100644 --- a/MdePkg/Library/BaseMemoryLib/SetMem32Wrapper.c +++ b/MdePkg/Library/BaseMemoryLib/SetMem32Wrapper.c @@ -19,11 +19,11 @@ BaseMemoryLibSse2 BaseMemoryLibRepStr PeiMemoryLib - UefiMemoryLib + DxeMemoryLib **/ -#include "MemLibWrappers.h" +#include "MemLibInternals.h" /** Fills a target buffer with a 32-bit value, and returns the target buffer. @@ -32,7 +32,7 @@ Value, and returns Buffer. Value is repeated every 32-bits in for Length bytes of Buffer. - If Buffer is NULL and Length > 0, then ASSERT(). + 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(). @@ -41,24 +41,25 @@ @param Length Number of bytes in Buffer to fill. @param Value Value with which to fill Length bytes of Buffer. - @return Buffer + @return Buffer. **/ VOID * EFIAPI SetMem32 ( - OUT VOID *Buffer, - IN UINTN Length, - IN UINT32 Value + OUT VOID *Buffer, + IN UINTN Length, + IN UINT32 Value ) { - ASSERT (Buffer != NULL); - ASSERT (Length <= MAX_ADDRESS - (UINTN)Buffer + 1); - ASSERT ((((UINTN)Buffer) & 1) != 0); - ASSERT ((Length & 1) != 0); - - if ((Length /= sizeof (Value)) == 0) { + if (Length == 0) { return Buffer; } - return InternalMemSetMem32 (Buffer, Length, Value); + + 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); }