# _xsave()/_xsavec()/_xsaves()

Saves the states of x87 FPU, MMX, XMM, YMM, and MXCSR registers to memory.

## Syntax

extern void _xsave(void *mem, unsigned __int64 save_mask); extern void _xsavec(void *mem, unsigned __int64 save_mask); extern void _xsaves(void *mem, unsigned __int64 save_mask);

## Arguments

mem

  A memory reference to `FXSAVE` area. The 512-bytes memory addressed by the reference must be 16-bytes aligned.

save_mask

  A bit mask specifying the extended states to be saved.

## Description

Saves the states of x87 FPU, MMX, XMM, YMM, and MXCSR registers to memory. The xsave intrinsic maps to XSAVE instruction, the xsavec intrinsic maps to XSAVEC instruction, and the xsaves intrinsic maps to XSAVES instruction. See the Intel® 64 and IA-32 Architectures Software Developer's Manual for information on how the three instructions differ.

Parent topic: Intrinsics for Saving and Restoring the Extended Processor States