EDK2 doxygen online documents - Firmware Encoding Index 1
EDK2 doxygen online documents - Firmware Encoding Index
Functions

MdePkg/Library/BaseMemoryLib/MemLibGeneric.c File Reference

#include "MemLibInternals.h"

Go to the source code of this file.

Functions

VOID *EFIAPI InternalMemSetMem16 (OUT VOID *Buffer, IN UINTN Length, IN UINT16 Value)
VOID *EFIAPI InternalMemSetMem32 (OUT VOID *Buffer, IN UINTN Length, IN UINT32 Value)
VOID *EFIAPI InternalMemSetMem64 (OUT VOID *Buffer, IN UINTN Length, IN UINT64 Value)
VOID *EFIAPI InternalMemZeroMem (OUT VOID *Buffer, IN UINTN Length)
INTN EFIAPI InternalMemCompareMem (IN CONST VOID *DestinationBuffer, IN CONST VOID *SourceBuffer, IN UINTN Length)
CONST VOID *EFIAPI InternalMemScanMem8 (IN CONST VOID *Buffer, IN UINTN Length, IN UINT8 Value)
CONST VOID *EFIAPI InternalMemScanMem16 (IN CONST VOID *Buffer, IN UINTN Length, IN UINT16 Value)
CONST VOID *EFIAPI InternalMemScanMem32 (IN CONST VOID *Buffer, IN UINTN Length, IN UINT32 Value)
CONST VOID *EFIAPI InternalMemScanMem64 (IN CONST VOID *Buffer, IN UINTN Length, IN UINT64 Value)

Detailed Description

Architecture Independent Base Memory Library Implementation.

The following BaseMemoryLib instances contain the same copy of this file: BaseMemoryLib PeiMemoryLib UefiMemoryLib

Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

Definition in file MemLibGeneric.c.


Function Documentation

INTN EFIAPI InternalMemCompareMem ( IN CONST VOID *  DestinationBuffer,
IN CONST VOID *  SourceBuffer,
IN UINTN  Length 
)

Compares two memory buffers of a given length.

Parameters:
DestinationBufferThe first memory buffer.
SourceBufferThe second memory buffer.
LengthLength of DestinationBuffer and SourceBuffer memory regions to compare. Must be non-zero.
Returns:
0 All Length bytes of the two buffers are identical.
Return values:
Non-zeroThe first mismatched byte in SourceBuffer subtracted from the first mismatched byte in DestinationBuffer.

Definition at line 128 of file MemLibGeneric.c.

CONST VOID* EFIAPI InternalMemScanMem16 ( IN CONST VOID *  Buffer,
IN UINTN  Length,
IN UINT16  Value 
)

Scans a target buffer for a 16-bit value, and returns a pointer to the matching 16-bit value in the target buffer.

Parameters:
BufferThe pointer to the target buffer to scan.
LengthThe count of 16-bit value to scan. Must be non-zero.
ValueThe value to search for in the target buffer.
Returns:
The pointer to the first occurrence, or NULL if not found.

Definition at line 186 of file MemLibGeneric.c.

CONST VOID* EFIAPI InternalMemScanMem32 ( IN CONST VOID *  Buffer,
IN UINTN  Length,
IN UINT32  Value 
)

Scans a target buffer for a 32-bit value, and returns a pointer to the matching 32-bit value in the target buffer.

Parameters:
BufferThe pointer to the target buffer to scan.
LengthThe count of 32-bit value to scan. Must be non-zero.
ValueThe value to search for in the target buffer.
Returns:
The pointer to the first occurrence, or NULL if not found.

Definition at line 217 of file MemLibGeneric.c.

CONST VOID* EFIAPI InternalMemScanMem64 ( IN CONST VOID *  Buffer,
IN UINTN  Length,
IN UINT64  Value 
)

Scans a target buffer for a 64-bit value, and returns a pointer to the matching 64-bit value in the target buffer.

Parameters:
BufferThe pointer to the target buffer to scan.
LengthThe count of 64-bit value to scan. Must be non-zero.
ValueThe value to search for in the target buffer.
Returns:
The pointer to the first occurrence, or NULL if not found.

Definition at line 248 of file MemLibGeneric.c.

CONST VOID* EFIAPI InternalMemScanMem8 ( IN CONST VOID *  Buffer,
IN UINTN  Length,
IN UINT8  Value 
)

Scans a target buffer for an 8-bit value, and returns a pointer to the matching 8-bit value in the target buffer.

Parameters:
BufferThe pointer to the target buffer to scan.
LengthThe count of 8-bit value to scan. Must be non-zero.
ValueThe value to search for in the target buffer.
Returns:
The pointer to the first occurrence, or NULL if not found.

Definition at line 155 of file MemLibGeneric.c.

VOID* EFIAPI InternalMemSetMem16 ( OUT VOID *  Buffer,
IN UINTN  Length,
IN UINT16  Value 
)

Fills a target buffer with a 16-bit value, and returns the target buffer.

Parameters:
BufferThe pointer to the target buffer to fill.
LengthThe count of 16-bit value to fill.
ValueThe value with which to fill Length bytes of Buffer.
Returns:
Buffer

Definition at line 34 of file MemLibGeneric.c.

VOID* EFIAPI InternalMemSetMem32 ( OUT VOID *  Buffer,
IN UINTN  Length,
IN UINT32  Value 
)

Fills a target buffer with a 32-bit value, and returns the target buffer.

Parameters:
BufferThe pointer to the target buffer to fill.
LengthThe count of 32-bit value to fill.
ValueThe value with which to fill Length bytes of Buffer.
Returns:
Buffer

Definition at line 58 of file MemLibGeneric.c.

VOID* EFIAPI InternalMemSetMem64 ( OUT VOID *  Buffer,
IN UINTN  Length,
IN UINT64  Value 
)

Fills a target buffer with a 64-bit value, and returns the target buffer.

Parameters:
BufferThe pointer to the target buffer to fill.
LengthThe count of 64-bit value to fill.
ValueThe value with which to fill Length bytes of Buffer.
Returns:
Buffer

Definition at line 82 of file MemLibGeneric.c.

VOID* EFIAPI InternalMemZeroMem ( OUT VOID *  Buffer,
IN UINTN  Length 
)

Set Buffer to 0 for Size bytes.

Parameters:
BufferMemory to set.
LengthThe number of bytes to set.
Returns:
Buffer

Definition at line 105 of file MemLibGeneric.c.

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Defines