|
PatchworkOS
|
#include <kernel/cpu/cpu.h>#include <kernel/cpu/simd.h>#include <kernel/cpu/smp.h>#include <kernel/log/log.h>#include <kernel/mem/pmm.h>#include <kernel/defs.h>#include <stdint.h>#include <string.h>#include <sys/cpuid.h>Go to the source code of this file.
Functions | |
| static uint8_t initCtx[PAGE_SIZE] | ALIGNED (64) |
| static void | simd_xsave_init (void) |
| void | simd_cpu_init (void) |
| uint64_t | simd_ctx_init (simd_ctx_t *ctx) |
| void | simd_ctx_deinit (simd_ctx_t *ctx) |
| void | simd_ctx_save (simd_ctx_t *ctx) |
| void | simd_ctx_load (simd_ctx_t *ctx) |
|
static |
Definition at line 15 of file simd.c.
References CPUID_EBX_AVX512F, CPUID_ECX_AVX, cpuid_extended_feature_info(), cpuid_feature_info(), cr4_read(), cr4_write(), CR4_XSAVE_ENABLE, cpuid_extended_feature_info_t::featuresEbx, info, XCR0_AVX512_ENABLE, XCR0_AVX_ENABLE, xcr0_write(), XCR0_XSAVE_SAVE_SSE, XCR0_XSAVE_SAVE_X87, XCR0_ZMM0_15_ENABLE, and XCR0_ZMM16_32_ENABLE.
Referenced by simd_cpu_init().