PatchworkOS  c9fea19
A non-POSIX operating system.
Loading...
Searching...
No Matches
SIMD

SIMD context management. More...

Collaboration diagram for SIMD:

Detailed Description

SIMD context management.

SIMD (Single Instruction, Multiple Data) context management allows saving and restoring the state of SIMD registers, the fact that SIMD uses its own registers is the reason that we cant use SIMD in the kernel normally.

See also
XSAVE Instruction
FXSAVE Instruction
FNINIT Instruction

Data Structures

struct  simd_ctx_t
 

Functions

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)
 

Function Documentation

◆ simd_cpu_init()

void simd_cpu_init ( void  )

Definition at line 41 of file simd.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ simd_ctx_init()

uint64_t simd_ctx_init ( simd_ctx_t ctx)

Definition at line 121 of file simd.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ simd_ctx_deinit()

void simd_ctx_deinit ( simd_ctx_t ctx)

Definition at line 134 of file simd.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ simd_ctx_save()

void simd_ctx_save ( simd_ctx_t ctx)

Definition at line 139 of file simd.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ simd_ctx_load()

void simd_ctx_load ( simd_ctx_t ctx)

Definition at line 154 of file simd.c.

Here is the call graph for this function:
Here is the caller graph for this function: