17 MM_REGISTER_RANGE (EFI_MM_SAVE_STATE_REGISTER_ES, EFI_MM_SAVE_STATE_REGISTER_RIP),
18 MM_REGISTER_RANGE (EFI_MM_SAVE_STATE_REGISTER_RFLAGS, EFI_MM_SAVE_STATE_REGISTER_CR4),
43 for (Index = 0, Offset = RegOffset; mCpuRegisterRanges[Index].Length != 0; Index++) {
44 if ((
Register >= mCpuRegisterRanges[Index].Start) && (
Register <= mCpuRegisterRanges[Index].End)) {
45 return Register - mCpuRegisterRanges[Index].Start + Offset;
48 Offset += mCpuRegisterRanges[Index].Length;
80 if (RegisterIndex == 0) {
96 return EFI_INVALID_PARAMETER;
109 return EFI_NOT_FOUND;
116 return EFI_INVALID_PARAMETER;
UINT8 MmSaveStateGetRegisterLma(VOID)
VOID *EFIAPI CopyMem(OUT VOID *DestinationBuffer, IN CONST VOID *SourceBuffer, IN UINTN Length)
#define EFI_MM_SAVE_STATE_REGISTER_LMA_32BIT
EFI_MM_SAVE_STATE_REGISTER
@ EFI_MM_SAVE_STATE_REGISTER_GDTBASE
UINTN MmSaveStateGetRegisterIndex(IN EFI_MM_SAVE_STATE_REGISTER Register, IN UINTN RegOffset)
CONST CPU_MM_SAVE_STATE_LOOKUP_ENTRY mCpuWidthOffset[]
EFI_STATUS MmSaveStateReadRegisterByIndex(IN UINTN CpuIndex, IN UINTN RegisterIndex, IN UINTN Width, OUT VOID *Buffer)
EFI_STATUS EFIAPI Register(IN EFI_PEI_RSC_HANDLER_CALLBACK Callback)