diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2020-11-28 18:57:01 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2020-11-28 18:57:22 +0100 |
commit | 9dd636371312ef48fa5f6bc068360ce81d2e367f (patch) | |
tree | 5782e4665778ee9cc0cbe54fd5a4928de911817f /kern/task.h | |
parent | 0e59d87e06f967680d250b9a74d08da1389b6212 (diff) | |
download | gnumach-9dd636371312ef48fa5f6bc068360ce81d2e367f.tar.gz gnumach-9dd636371312ef48fa5f6bc068360ce81d2e367f.tar.bz2 gnumach-9dd636371312ef48fa5f6bc068360ce81d2e367f.zip |
x86: Add XSAVEOPT, XSAVEC, XSAVES support
* i386/i386/fpu.h (CPU_FEATURE_XSAVEOPT, CPU_FEATURE_XSAVEC,
CPU_FEATURE_XGETBV1, CPU_FEATURE_XSAVES): New macros.
(xsaveopt, xsavec, xsaves, xrstors): New macros.
(fpu_save_context): Use xsaveopt, xsavec, or xsaves when available.
(fp_save_kind): New enum.
(fp_save_kind): New variable declaration.
* i386/i386/fpu.c (fp_save_kind): New variable.
(init_fpu): Set fp_save_kind according to enumeration. When XSAVES is
supported, use xsave area size from corresponding enumeration.
(fp_save): Use xsaveopt, xsavec, xsaves when available.
(fp_load): Use xrstors when available.
Diffstat (limited to 'kern/task.h')
0 files changed, 0 insertions, 0 deletions