]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Library/BaseMemoryLibOptPei/IsZeroBufferWrapper.c
MdePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdePkg / Library / BaseMemoryLibOptPei / IsZeroBufferWrapper.c
CommitLineData
02b5cf7f
HW
1/** @file\r
2 Implementation of IsZeroBuffer function.\r
3\r
4 The following BaseMemoryLib instances contain the same copy of this file:\r
5\r
6 BaseMemoryLib\r
7 BaseMemoryLibMmx\r
8 BaseMemoryLibSse2\r
9 BaseMemoryLibRepStr\r
10 BaseMemoryLibOptDxe\r
11 BaseMemoryLibOptPei\r
12 PeiMemoryLib\r
13 UefiMemoryLib\r
14\r
15 Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
9344f092 16 SPDX-License-Identifier: BSD-2-Clause-Patent\r
02b5cf7f
HW
17\r
18**/\r
19\r
20#include "MemLibInternals.h"\r
21\r
22/**\r
23 Checks if the contents of a buffer are all zeros.\r
24\r
25 This function checks whether the contents of a buffer are all zeros. If the\r
26 contents are all zeros, return TRUE. Otherwise, return FALSE.\r
27\r
28 If Length > 0 and Buffer is NULL, then ASSERT().\r
29 If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().\r
30\r
31 @param Buffer The pointer to the buffer to be checked.\r
32 @param Length The size of the buffer (in bytes) to be checked.\r
33\r
34 @retval TRUE Contents of the buffer are all zeros.\r
35 @retval FALSE Contents of the buffer are not all zeros.\r
36\r
37**/\r
38BOOLEAN\r
39EFIAPI\r
40IsZeroBuffer (\r
41 IN CONST VOID *Buffer,\r
42 IN UINTN Length\r
43 )\r
44{\r
45 ASSERT (!(Buffer == NULL && Length > 0));\r
46 ASSERT ((Length - 1) <= (MAX_ADDRESS - (UINTN)Buffer));\r
47 return InternalMemIsZeroBuffer (Buffer, Length);\r
48}\r