VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/MdePkg/Library/BaseLib/X86FxSave.c@ 107675

最後變更 在這個檔案從107675是 99404,由 vboxsync 提交於 2 年 前

Devices/EFI/FirmwareNew: Update to edk2-stable202302 and make it build, bugref:4643

  • 屬性 svn:eol-style 設為 native
檔案大小: 958 位元組
 
1/** @file
2 IA-32/x64 AsmFxSave()
3
4 Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7**/
8
9#include "BaseLibInternals.h"
10
11/**
12 Save the current floating point/SSE/SSE2 context to a buffer.
13
14 Saves the current floating point/SSE/SSE2 state to the buffer specified by
15 Buffer. Buffer must be aligned on a 16-byte boundary. This function is only
16 available on IA-32 and x64.
17
18 If Buffer is NULL, then ASSERT().
19 If Buffer is not aligned on a 16-byte boundary, then ASSERT().
20
21 @param Buffer A pointer to a buffer to save the floating point/SSE/SSE2 context.
22
23**/
24VOID
25EFIAPI
26AsmFxSave (
27 OUT IA32_FX_BUFFER *Buffer
28 )
29{
30 ASSERT (Buffer != NULL);
31 ASSERT (0 == ((UINTN)Buffer & 0xf));
32
33 InternalX86FxSave (Buffer);
34
35 //
36 // Mark one flag at end of Buffer, it will be check by AsmFxRestor()
37 //
38 *(UINT32 *)(&Buffer->Buffer[sizeof (Buffer->Buffer) - 4]) = 0xAA5555AA;
39}
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette