Enable AVX-512 flags in XCR0

This commit is contained in:
Shaowei Song
2024-07-16 09:07:08 +00:00
committed by Tate, Hongliang Tian
parent 4292ec2ebb
commit 6cfccccab1

View File

@ -135,7 +135,10 @@ fn enable_common_cpu_features() {
} }
let mut xcr0 = x86_64::registers::xcontrol::XCr0::read(); let mut xcr0 = x86_64::registers::xcontrol::XCr0::read();
xcr0 |= XCr0Flags::AVX | XCr0Flags::SSE; // TODO: Ensure proper saving and restoring of floating-point states
// to correctly support advanced instructions like AVX-512.
let avx512 = XCr0Flags::OPMASK | XCr0Flags::ZMM_HI256 | XCr0Flags::HI16_ZMM;
xcr0 |= XCr0Flags::AVX | XCr0Flags::SSE | avx512;
unsafe { unsafe {
x86_64::registers::xcontrol::XCr0::write(xcr0); x86_64::registers::xcontrol::XCr0::write(xcr0);
} }