xcr0
uint64_t xcr0 = 0;
xcr0 = rdxcr(0);
wrxcr(0, xcr0);
uint64_t xcr0 = 0;
xcr0 = rdxcr(0);
wrxcr(0, xcr0);
nvmm_x86_xsave_size(uint64_t xcr0)
KASSERTMSG((xcr0 & ~__BITS(62, 0)) == 0, "xcr0=0x%"PRIx64, xcr0);
KASSERTMSG((xcr0 & ~x86_xsave_features) == 0,
xcr0, x86_xsave_features);
if ((xcr0 & __BIT(i)) == 0)
nvmm_x86_xcr0_valid(uint64_t xcr0, uint64_t xcr0_mask)
if (__predict_false(xcr0 & ~xcr0_mask))
if (__predict_false((xcr0 & XCR0_X87) == 0))
if (__predict_false((xcr0 & (XCR0_YMM_Hi128|XCR0_SSE)) ==
nvmm_x86_munge_xcr0(uint64_t xcr0, uint64_t xcr0_mask)
uint64_t origxcr0 __diagused = xcr0;
xcr0 &= xcr0_mask;
xcr0 |= XCR0_X87;
if (__predict_false((xcr0 & (XCR0_YMM_Hi128|XCR0_SSE)) ==
xcr0 |= XCR0_SSE;
KASSERTMSG(nvmm_x86_xcr0_valid(xcr0, xcr0_mask),
origxcr0, xcr0, xcr0_mask);
return xcr0;
const uint64_t xcr0 = state->crs[NVMM_X64_CR_XCR0];
cpudata->gxcr0 = nvmm_x86_munge_xcr0(xcr0,
const uint64_t xcr0 = state->crs[NVMM_X64_CR_XCR0];
cpudata->gxcr0 = nvmm_x86_munge_xcr0(xcr0,