03.03.2013 Views

Intel® Architecture Instruction Set Extensions Programming Reference

Intel® Architecture Instruction Set Extensions Programming Reference

Intel® Architecture Instruction Set Extensions Programming Reference

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

The format of the header is as follows (see Table 3-4):<br />

SYSTEM PROGRAMMING MODEL<br />

Table 3-3. Layout of XSAVE Area For Processor Supporting YMM State<br />

Save Areas Offset (Byte) Size (Bytes)<br />

FPU/SSE SaveArea 0 512<br />

Header 512 64<br />

Ext_Save_Area_2 (YMM) CPUID.(EAX=0DH, ECX=2):EBX CPUID.(EAX=0DH, ECX=2):EAX<br />

15:8 7:0<br />

Table 3-4. XSAVE Header Format<br />

The layout of the Ext_Save_Area[YMM] contains 16 of the upper 128-bits of the YMM registers, it is shown in<br />

Table 3-5.<br />

3.2.5 XSAVE/XRSTOR Interaction with YMM State and MXCSR<br />

Byte Offset from<br />

Header<br />

Byte Offset from<br />

XSAVE Area<br />

Reserved (Must be zero) XSTATE_BV 0 512<br />

Reserved Reserved (Must be zero) 16 528<br />

Reserved Reserved 32 544<br />

Reserved Reserved 48 560<br />

Table 3-5. XSAVE Save Area Layout for YMM State (Ext_Save_Area_2)<br />

31 16 15 0<br />

Byte Offset from<br />

YMM_Save_Area<br />

Byte Offset from XSAVE Area<br />

YMM1[255:128] YMM0[255:128] 0 576<br />

YMM3[255:128] YMM2[255:128] 32 608<br />

YMM5[255:128] YMM4[255:128] 64 640<br />

YMM7[255:128] YMM6[255:128] 96 672<br />

YMM9[255:128] YMM8[255:128] 128 704<br />

YMM11[255:128] YMM10[255:128] 160 736<br />

YMM13[255:128] YMM12[255:128] 192 768<br />

YMM15[255:128] YMM14[255:128] 224 800<br />

The processor’s action as a result of executing XRSTOR, on the MXCSR, XMM and YMM registers, are listed in Table<br />

3-6 (Both bit 1 and bit 2 of the XFEATURE_ENABLED_MASK register are presumed to be 1). The XMM registers may<br />

be initialized by the processor (See XRSTOR operation in <strong>Intel®</strong> 64 and IA-32 <strong>Architecture</strong>s Software Developer’s<br />

Manual, Volume 2B). When the MXCSR register is updated from memory, reserved bit checking is enforced. The<br />

saving/restoring of MXCSR is bound to both the SSE state and YMM state. MXCSR save/restore will not be bound to<br />

any future states.<br />

Ref. # 319433-014 3-3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!