The PrePiLib should really be used for the PEI phase (not the SEC phase).
It is the DXE core that take the tick for the end of the PEI phase.
The Platform PrePi module should be responsible to take the tick when it
starts for the PEI phase.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11946
6f19259b-4bc3-4df7-8a09-
765794883524
EFIAPI
SecWinNtPeiLoadFile (
EFIAPI
SecWinNtPeiLoadFile (
IN EFI_PHYSICAL_ADDRESS *ImageAddress,
IN EFI_PHYSICAL_ADDRESS *ImageAddress,
IN EFI_PHYSICAL_ADDRESS *EntryPoint
IN EFI_PHYSICAL_ADDRESS *EntryPoint
VOID *TopOfStack;
VOID *Hob;
EFI_FV_FILE_INFO FvFileInfo;
VOID *TopOfStack;
VOID *Hob;
EFI_FV_FILE_INFO FvFileInfo;
- UINT64 Tick;
-
- Tick = 0;
- PERF_START (NULL, "SEC", NULL, 1);
Status = FfsFindSectionData (EFI_SECTION_PE32, FileHandle, &PeCoffImage);
if (EFI_ERROR (Status)) {
Status = FfsFindSectionData (EFI_SECTION_PE32, FileHandle, &PeCoffImage);
if (EFI_ERROR (Status)) {
if (StackSize == 0) {
// User the current stack
if (StackSize == 0) {
// User the current stack
-
- if (PerformanceMeasurementEnabled ()) {
- Tick = GetPerformanceCounter ();
- }
- PERF_END (NULL, "SEC", NULL, Tick);
-
((DXE_CORE_ENTRY_POINT)(UINTN)EntryPoint) (Hob);
} else {
((DXE_CORE_ENTRY_POINT)(UINTN)EntryPoint) (Hob);
} else {
// Update the contents of BSP stack HOB to reflect the real stack info passed to DxeCore.
//
UpdateStackHob ((EFI_PHYSICAL_ADDRESS)(UINTN) BaseOfStack, StackSize);
// Update the contents of BSP stack HOB to reflect the real stack info passed to DxeCore.
//
UpdateStackHob ((EFI_PHYSICAL_ADDRESS)(UINTN) BaseOfStack, StackSize);
-
-
- if (PerformanceMeasurementEnabled ()) {
- Tick = GetPerformanceCounter ();
- }
- PERF_END (NULL, "SEC", NULL, Tick);
SwitchStack (
(SWITCH_STACK_ENTRY_POINT)(UINTN)EntryPoint,
SwitchStack (
(SWITCH_STACK_ENTRY_POINT)(UINTN)EntryPoint,