-\r
- OldHandOffHob = PrivateData->HobList.HandoffInformationTable;\r
-\r
- PrivateData->HobList.Raw = (VOID *)((UINTN)(MemoryBegin + PrivateData->StackSize));\r
- NewHandOffHob = PrivateData->HobList.HandoffInformationTable;\r
- PhysicalAddressOfOldHob = (EFI_PHYSICAL_ADDRESS) (UINTN) OldHandOffHob;\r
-\r
- EfiFreeMemorySize = OldHandOffHob->EfiFreeMemoryBottom - PhysicalAddressOfOldHob;\r
- \r
- DEBUG ((EFI_D_INFO, "HOBLIST address before memory init = 0x%08x\n", OldHandOffHob));\r
- DEBUG ((EFI_D_INFO, "HOBLIST address after memory init = 0x%08x\n", NewHandOffHob));\r
-\r
- CopyMem (\r
- NewHandOffHob,\r
- OldHandOffHob,\r
- (UINTN)EfiFreeMemorySize\r
- );\r
-\r
- NewHandOffHob->EfiMemoryTop = MemoryBegin + MemoryLength;\r
- NewHandOffHob->EfiFreeMemoryTop = NewHandOffHob->EfiMemoryTop;\r
- NewHandOffHob->EfiMemoryBottom = MemoryBegin;\r
- \r
- NewHandOffHob->EfiFreeMemoryBottom = (UINTN)NewHandOffHob + EfiFreeMemorySize; \r
- \r
- NewHandOffHob->EfiEndOfHobList = (UINTN)NewHandOffHob +\r
- (OldHandOffHob->EfiEndOfHobList -\r
- PhysicalAddressOfOldHob);\r
-\r
- ConvertPpiPointers (PeiServices, OldHandOffHob, NewHandOffHob);\r
-\r
- BuildStackHob (PrivateData->StackBase, PrivateData->StackSize);\r