On 28/11/2015 20:56, Eduardo Habkost wrote:
> +/* Ext. save area 2: AVX State */
> +typedef struct XSaveAVX {
> + uint64_t ymmh[16][2];
> +} XSaveAVX;
> +
Because this is always little endian, I would write it as uint8_t[16][16].
> +/* Ext. save area 6: ZMM_Hi256 */
> +typedef struct XSaveZMM_Hi256 {
> + uint64_t zmm_hi256[16][4];
> +} XSaveZMM_Hi256;
Same here (uint8_t[16][32]).
> +/* Ext. save area 7: Hi16_ZMM */
> +typedef struct XSaveHi16_ZMM {
> + XMMReg hi16_zmm[16];
> +} XSaveHi16_ZMM;
This is uint8_t[16][64] or uint64_t[16][8].
Paolo