@return The number of bytes associated with the number of EFI_PAGEs specified\r
by Pages.\r
**/\r
+STATIC\r
UINT64\r
EfiPagesToSize (\r
IN UINT64 Pages\r
by Size.\r
\r
**/\r
+STATIC\r
UINT64\r
EfiSizeToPages (\r
IN UINT64 Size\r
/**\r
Acquire memory lock on mPropertiesTableLock.\r
**/\r
+STATIC\r
VOID\r
CoreAcquirePropertiesTableLock (\r
VOID\r
/**\r
Release memory lock on mPropertiesTableLock.\r
**/\r
+STATIC\r
VOID\r
CoreReleasePropertiesTableLock (\r
VOID\r
@param MemoryMapSize Size, in bytes, of the MemoryMap buffer.\r
@param DescriptorSize Size, in bytes, of an individual EFI_MEMORY_DESCRIPTOR.\r
**/\r
+STATIC\r
VOID\r
SortMemoryMap (\r
IN OUT EFI_MEMORY_DESCRIPTOR *MemoryMap,\r
it is the size of new memory map after merge.\r
@param DescriptorSize Size, in bytes, of an individual EFI_MEMORY_DESCRIPTOR.\r
**/\r
+STATIC\r
VOID\r
MergeMemoryMap (\r
IN OUT EFI_MEMORY_DESCRIPTOR *MemoryMap,\r
@param MemoryMapSize Size, in bytes, of the MemoryMap buffer.\r
@param DescriptorSize Size, in bytes, of an individual EFI_MEMORY_DESCRIPTOR.\r
**/\r
+STATIC\r
VOID\r
EnforceMemoryMapAttribute (\r
IN OUT EFI_MEMORY_DESCRIPTOR *MemoryMap,\r
\r
@return first image record covered by [buffer, length]\r
**/\r
+STATIC\r
IMAGE_PROPERTIES_RECORD *\r
GetImageRecordByAddress (\r
IN EFI_PHYSICAL_ADDRESS Buffer,\r
@param OldRecord A pointer to one old memory map entry.\r
@param DescriptorSize Size, in bytes, of an individual EFI_MEMORY_DESCRIPTOR.\r
**/\r
+STATIC\r
UINTN\r
SetNewRecord (\r
IN IMAGE_PROPERTIES_RECORD *ImageRecord,\r
@retval 0 no entry need to be splitted.\r
@return the max number of new splitted entries\r
**/\r
+STATIC\r
UINTN\r
GetMaxSplitRecordCount (\r
IN EFI_MEMORY_DESCRIPTOR *OldRecord\r
@retval 0 no entry is splitted.\r
@return the real number of splitted record.\r
**/\r
+STATIC\r
UINTN\r
SplitRecord (\r
IN EFI_MEMORY_DESCRIPTOR *OldRecord,\r
the current memory map.\r
@param DescriptorSize Size, in bytes, of an individual EFI_MEMORY_DESCRIPTOR.\r
**/\r
+STATIC\r
VOID\r
SplitTable (\r
IN OUT UINTN *MemoryMapSize,\r
@retval EFI_INVALID_PARAMETER One of the parameters has an invalid value.\r
\r
**/\r
+STATIC\r
EFI_STATUS\r
EFIAPI\r
CoreGetMemoryMapPropertiesTable (\r
\r
@param SectionAlignment PE/COFF section alignment\r
**/\r
+STATIC\r
VOID\r
SetPropertiesTableSectionAlignment (\r
IN UINT32 SectionAlignment\r
@param FirstImageRecordCodeSection first code section in image record\r
@param SecondImageRecordCodeSection second code section in image record\r
**/\r
+STATIC\r
VOID\r
SwapImageRecordCodeSection (\r
IN IMAGE_PROPERTIES_RECORD_CODE_SECTION *FirstImageRecordCodeSection,\r
\r
@param ImageRecord image record to be sorted\r
**/\r
+STATIC\r
VOID\r
SortImageRecordCodeSection (\r
IN IMAGE_PROPERTIES_RECORD *ImageRecord\r
@retval TRUE image record is valid\r
@retval FALSE image record is invalid\r
**/\r
+STATIC\r
BOOLEAN\r
IsImageRecordCodeSectionValid (\r
IN IMAGE_PROPERTIES_RECORD *ImageRecord\r
@param FirstImageRecord first image record.\r
@param SecondImageRecord second image record.\r
**/\r
+STATIC\r
VOID\r
SwapImageRecord (\r
IN IMAGE_PROPERTIES_RECORD *FirstImageRecord,\r
/**\r
Sort image record based upon the ImageBase from low to high.\r
**/\r
+STATIC\r
VOID\r
SortImageRecord (\r
VOID\r
/**\r
Dump image record.\r
**/\r
+STATIC\r
VOID\r
DumpImageRecord (\r
VOID\r
\r
@return image record\r
**/\r
+STATIC\r
IMAGE_PROPERTIES_RECORD *\r
FindImageRecord (\r
IN EFI_PHYSICAL_ADDRESS ImageBase,\r