anv/device: Update features and limits
[mesa.git] / src / vulkan / gen8_pack.h
index dd7f1b55a50ad690d3ea47ebd47f047be1b586ec..4d6b7c0a04dd96d513f2e46d4ccbd47dfada041d 100644 (file)
@@ -92,7 +92,6 @@ __gen_float(float v)
 
 #endif
 
-#define GEN8_3DSTATE_URB_VS_length 0x00000002
 #define GEN8_3DSTATE_URB_VS_length_bias 0x00000002
 #define GEN8_3DSTATE_URB_VS_header              \
    .CommandType          =  3,                  \
@@ -101,6 +100,8 @@ __gen_float(float v)
    ._3DCommandSubOpcode  = 48,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_URB_VS_length 0x00000002
+
 struct GEN8_3DSTATE_URB_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -114,7 +115,7 @@ struct GEN8_3DSTATE_URB_VS {
 
 static inline void
 GEN8_3DSTATE_URB_VS_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_3DSTATE_URB_VS * restrict values)
+                         const struct GEN8_3DSTATE_URB_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -134,7 +135,6 @@ GEN8_3DSTATE_URB_VS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_VS_length 0x00000009
 #define GEN8_3DSTATE_VS_length_bias 0x00000002
 #define GEN8_3DSTATE_VS_header                  \
    .CommandType          =  3,                  \
@@ -143,6 +143,8 @@ GEN8_3DSTATE_URB_VS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 16,                  \
    .DwordLength          =  7
 
+#define GEN8_3DSTATE_VS_length 0x00000009
+
 struct GEN8_3DSTATE_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -190,7 +192,7 @@ struct GEN8_3DSTATE_VS {
 
 static inline void
 GEN8_3DSTATE_VS_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_VS * restrict values)
+                     const struct GEN8_3DSTATE_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -252,7 +254,6 @@ GEN8_3DSTATE_VS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_GPGPU_CSR_BASE_ADDRESS_length 0x00000003
 #define GEN8_GPGPU_CSR_BASE_ADDRESS_length_bias 0x00000002
 #define GEN8_GPGPU_CSR_BASE_ADDRESS_header      \
    .CommandType          =  3,                  \
@@ -261,18 +262,20 @@ GEN8_3DSTATE_VS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  4,                  \
    .DwordLength          =  1
 
+#define GEN8_GPGPU_CSR_BASE_ADDRESS_length 0x00000003
+
 struct GEN8_GPGPU_CSR_BASE_ADDRESS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
    uint32_t                                     _3DCommandOpcode;
    uint32_t                                     _3DCommandSubOpcode;
    uint32_t                                     DwordLength;
-   __gen_address_type                           GPGPUCSRBaseAddressHigh;
+   __gen_address_type                           GPGPUCSRBaseAddress;
 };
 
 static inline void
 GEN8_GPGPU_CSR_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
-                                const struct GEN8_GPGPU_CSR_BASE_ADDRESS * restrict values)
+                                 const struct GEN8_GPGPU_CSR_BASE_ADDRESS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -288,19 +291,20 @@ GEN8_GPGPU_CSR_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
       0;
 
    uint64_t qw1 =
-      __gen_combine_address(data, &dw[1], values->GPGPUCSRBaseAddressHigh, dw1);
+      __gen_combine_address(data, &dw[1], values->GPGPUCSRBaseAddress, dw1);
 
    dw[1] = qw1;
    dw[2] = qw1 >> 32;
 
 }
 
-#define GEN8_MI_ATOMIC_length 0x00000003
 #define GEN8_MI_ATOMIC_length_bias 0x00000002
 #define GEN8_MI_ATOMIC_header                   \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 47
 
+#define GEN8_MI_ATOMIC_length 0x00000003
+
 struct GEN8_MI_ATOMIC {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -319,7 +323,6 @@ struct GEN8_MI_ATOMIC {
    uint32_t                                     ATOMICOPCODE;
    uint32_t                                     DwordLength;
    __gen_address_type                           MemoryAddress;
-   uint32_t                                     MemoryAddressHigh;
    uint32_t                                     Operand1DataDword0;
    uint32_t                                     Operand2DataDword0;
    uint32_t                                     Operand1DataDword1;
@@ -332,7 +335,7 @@ struct GEN8_MI_ATOMIC {
 
 static inline void
 GEN8_MI_ATOMIC_pack(__gen_user_data *data, void * restrict dst,
-                   const struct GEN8_MI_ATOMIC * restrict values)
+                    const struct GEN8_MI_ATOMIC * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -352,12 +355,11 @@ GEN8_MI_ATOMIC_pack(__gen_user_data *data, void * restrict dst,
    uint32_t dw1 =
       0;
 
-   dw[1] =
+   uint64_t qw1 =
       __gen_combine_address(data, &dw[1], values->MemoryAddress, dw1);
 
-   dw[2] =
-      __gen_field(values->MemoryAddressHigh, 0, 15) |
-      0;
+   dw[1] = qw1;
+   dw[2] = qw1 >> 32;
 
    dw[3] =
       __gen_field(values->Operand1DataDword0, 0, 31) |
@@ -393,13 +395,14 @@ GEN8_MI_ATOMIC_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_LOAD_REGISTER_REG_length 0x00000003
 #define GEN8_MI_LOAD_REGISTER_REG_length_bias 0x00000002
 #define GEN8_MI_LOAD_REGISTER_REG_header        \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 42,                  \
    .DwordLength          =  1
 
+#define GEN8_MI_LOAD_REGISTER_REG_length 0x00000003
+
 struct GEN8_MI_LOAD_REGISTER_REG {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -410,7 +413,7 @@ struct GEN8_MI_LOAD_REGISTER_REG {
 
 static inline void
 GEN8_MI_LOAD_REGISTER_REG_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_MI_LOAD_REGISTER_REG * restrict values)
+                               const struct GEN8_MI_LOAD_REGISTER_REG * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -430,13 +433,14 @@ GEN8_MI_LOAD_REGISTER_REG_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_SEMAPHORE_SIGNAL_length 0x00000002
 #define GEN8_MI_SEMAPHORE_SIGNAL_length_bias 0x00000002
 #define GEN8_MI_SEMAPHORE_SIGNAL_header         \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 27,                  \
    .DwordLength          =  0
 
+#define GEN8_MI_SEMAPHORE_SIGNAL_length 0x00000002
+
 struct GEN8_MI_SEMAPHORE_SIGNAL {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -453,7 +457,7 @@ struct GEN8_MI_SEMAPHORE_SIGNAL {
 
 static inline void
 GEN8_MI_SEMAPHORE_SIGNAL_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_MI_SEMAPHORE_SIGNAL * restrict values)
+                              const struct GEN8_MI_SEMAPHORE_SIGNAL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -471,13 +475,14 @@ GEN8_MI_SEMAPHORE_SIGNAL_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_SEMAPHORE_WAIT_length 0x00000004
 #define GEN8_MI_SEMAPHORE_WAIT_length_bias 0x00000002
 #define GEN8_MI_SEMAPHORE_WAIT_header           \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 28,                  \
    .DwordLength          =  2
 
+#define GEN8_MI_SEMAPHORE_WAIT_length 0x00000004
+
 struct GEN8_MI_SEMAPHORE_WAIT {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -501,7 +506,7 @@ struct GEN8_MI_SEMAPHORE_WAIT {
 
 static inline void
 GEN8_MI_SEMAPHORE_WAIT_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_MI_SEMAPHORE_WAIT * restrict values)
+                            const struct GEN8_MI_SEMAPHORE_WAIT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -529,13 +534,14 @@ GEN8_MI_SEMAPHORE_WAIT_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_STORE_REGISTER_MEM_length 0x00000004
 #define GEN8_MI_STORE_REGISTER_MEM_length_bias 0x00000002
 #define GEN8_MI_STORE_REGISTER_MEM_header       \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 36,                  \
    .DwordLength          =  2
 
+#define GEN8_MI_STORE_REGISTER_MEM_length 0x00000004
+
 struct GEN8_MI_STORE_REGISTER_MEM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -548,7 +554,7 @@ struct GEN8_MI_STORE_REGISTER_MEM {
 
 static inline void
 GEN8_MI_STORE_REGISTER_MEM_pack(__gen_user_data *data, void * restrict dst,
-                               const struct GEN8_MI_STORE_REGISTER_MEM * restrict values)
+                                const struct GEN8_MI_STORE_REGISTER_MEM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -575,7 +581,6 @@ GEN8_MI_STORE_REGISTER_MEM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_PIPELINE_SELECT_length 0x00000001
 #define GEN8_PIPELINE_SELECT_length_bias 0x00000001
 #define GEN8_PIPELINE_SELECT_header             \
    .CommandType          =  3,                  \
@@ -583,6 +588,8 @@ GEN8_MI_STORE_REGISTER_MEM_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  1,                  \
    ._3DCommandSubOpcode  =  4
 
+#define GEN8_PIPELINE_SELECT_length 0x00000001
+
 struct GEN8_PIPELINE_SELECT {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -596,7 +603,7 @@ struct GEN8_PIPELINE_SELECT {
 
 static inline void
 GEN8_PIPELINE_SELECT_pack(__gen_user_data *data, void * restrict dst,
-                         const struct GEN8_PIPELINE_SELECT * restrict values)
+                          const struct GEN8_PIPELINE_SELECT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -610,7 +617,6 @@ GEN8_PIPELINE_SELECT_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_STATE_BASE_ADDRESS_length 0x00000010
 #define GEN8_STATE_BASE_ADDRESS_length_bias 0x00000002
 #define GEN8_STATE_BASE_ADDRESS_header          \
    .CommandType          =  3,                  \
@@ -619,6 +625,10 @@ GEN8_PIPELINE_SELECT_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  1,                  \
    .DwordLength          = 14
 
+#define GEN8_STATE_BASE_ADDRESS_length 0x00000010
+
+#define GEN8_MEMORY_OBJECT_CONTROL_STATE_length 0x00000001
+
 struct GEN8_MEMORY_OBJECT_CONTROL_STATE {
 #define     UCwithFenceifcoherentcycle                         0
 #define     UCUncacheable                                      1
@@ -635,7 +645,7 @@ struct GEN8_MEMORY_OBJECT_CONTROL_STATE {
 
 static inline void
 GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(__gen_user_data *data, void * restrict dst,
-                                     const struct GEN8_MEMORY_OBJECT_CONTROL_STATE * restrict values)
+                                      const struct GEN8_MEMORY_OBJECT_CONTROL_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -681,7 +691,7 @@ struct GEN8_STATE_BASE_ADDRESS {
 
 static inline void
 GEN8_STATE_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
-                            const struct GEN8_STATE_BASE_ADDRESS * restrict values)
+                             const struct GEN8_STATE_BASE_ADDRESS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -786,7 +796,6 @@ GEN8_STATE_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_STATE_PREFETCH_length 0x00000002
 #define GEN8_STATE_PREFETCH_length_bias 0x00000002
 #define GEN8_STATE_PREFETCH_header              \
    .CommandType          =  3,                  \
@@ -795,6 +804,8 @@ GEN8_STATE_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  3,                  \
    .DwordLength          =  0
 
+#define GEN8_STATE_PREFETCH_length 0x00000002
+
 struct GEN8_STATE_PREFETCH {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -807,7 +818,7 @@ struct GEN8_STATE_PREFETCH {
 
 static inline void
 GEN8_STATE_PREFETCH_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_STATE_PREFETCH * restrict values)
+                         const struct GEN8_STATE_PREFETCH * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -828,7 +839,6 @@ GEN8_STATE_PREFETCH_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_STATE_SIP_length 0x00000003
 #define GEN8_STATE_SIP_length_bias 0x00000002
 #define GEN8_STATE_SIP_header                   \
    .CommandType          =  3,                  \
@@ -837,6 +847,8 @@ GEN8_STATE_PREFETCH_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  2,                  \
    .DwordLength          =  1
 
+#define GEN8_STATE_SIP_length 0x00000003
+
 struct GEN8_STATE_SIP {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -848,7 +860,7 @@ struct GEN8_STATE_SIP {
 
 static inline void
 GEN8_STATE_SIP_pack(__gen_user_data *data, void * restrict dst,
-                   const struct GEN8_STATE_SIP * restrict values)
+                    const struct GEN8_STATE_SIP * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -869,7 +881,6 @@ GEN8_STATE_SIP_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_SWTESS_BASE_ADDRESS_length 0x00000002
 #define GEN8_SWTESS_BASE_ADDRESS_length_bias 0x00000002
 #define GEN8_SWTESS_BASE_ADDRESS_header         \
    .CommandType          =  3,                  \
@@ -878,6 +889,8 @@ GEN8_STATE_SIP_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  3,                  \
    .DwordLength          =  0
 
+#define GEN8_SWTESS_BASE_ADDRESS_length 0x00000002
+
 struct GEN8_SWTESS_BASE_ADDRESS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -886,12 +899,11 @@ struct GEN8_SWTESS_BASE_ADDRESS {
    uint32_t                                     DwordLength;
    __gen_address_type                           SWTessellationBaseAddress;
    struct GEN8_MEMORY_OBJECT_CONTROL_STATE      SWTessellationMemoryObjectControlState;
-   __gen_address_type                           SWTessellationBaseAddressHigh;
 };
 
 static inline void
 GEN8_SWTESS_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_SWTESS_BASE_ADDRESS * restrict values)
+                              const struct GEN8_SWTESS_BASE_ADDRESS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -909,18 +921,14 @@ GEN8_SWTESS_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
       __gen_field(dw_SWTessellationMemoryObjectControlState, 8, 11) |
       0;
 
-   dw[1] =
+   uint64_t qw1 =
       __gen_combine_address(data, &dw[1], values->SWTessellationBaseAddress, dw1);
 
-   uint32_t dw2 =
-      0;
-
-   dw[2] =
-      __gen_combine_address(data, &dw[2], values->SWTessellationBaseAddressHigh, dw2);
+   dw[1] = qw1;
+   dw[2] = qw1 >> 32;
 
 }
 
-#define GEN8_3DPRIMITIVE_length 0x00000007
 #define GEN8_3DPRIMITIVE_length_bias 0x00000002
 #define GEN8_3DPRIMITIVE_header                 \
    .CommandType          =  3,                  \
@@ -929,6 +937,8 @@ GEN8_SWTESS_BASE_ADDRESS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  0,                  \
    .DwordLength          =  5
 
+#define GEN8_3DPRIMITIVE_length 0x00000007
+
 struct GEN8_3DPRIMITIVE {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -952,7 +962,7 @@ struct GEN8_3DPRIMITIVE {
 
 static inline void
 GEN8_3DPRIMITIVE_pack(__gen_user_data *data, void * restrict dst,
-                     const struct GEN8_3DPRIMITIVE * restrict values)
+                      const struct GEN8_3DPRIMITIVE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -995,7 +1005,6 @@ GEN8_3DPRIMITIVE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_AA_LINE_PARAMETERS_length 0x00000003
 #define GEN8_3DSTATE_AA_LINE_PARAMETERS_length_bias 0x00000002
 #define GEN8_3DSTATE_AA_LINE_PARAMETERS_header  \
    .CommandType          =  3,                  \
@@ -1004,6 +1013,8 @@ GEN8_3DPRIMITIVE_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 10,                  \
    .DwordLength          =  1
 
+#define GEN8_3DSTATE_AA_LINE_PARAMETERS_length 0x00000003
+
 struct GEN8_3DSTATE_AA_LINE_PARAMETERS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1022,7 +1033,7 @@ struct GEN8_3DSTATE_AA_LINE_PARAMETERS {
 
 static inline void
 GEN8_3DSTATE_AA_LINE_PARAMETERS_pack(__gen_user_data *data, void * restrict dst,
-                                    const struct GEN8_3DSTATE_AA_LINE_PARAMETERS * restrict values)
+                                     const struct GEN8_3DSTATE_AA_LINE_PARAMETERS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1057,6 +1068,10 @@ GEN8_3DSTATE_AA_LINE_PARAMETERS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 70
 
+#define GEN8_3DSTATE_BINDING_TABLE_EDIT_DS_length 0x00000000
+
+#define GEN8_BINDING_TABLE_EDIT_ENTRY_length 0x00000001
+
 struct GEN8_BINDING_TABLE_EDIT_ENTRY {
    uint32_t                                     BindingTableIndex;
    uint32_t                                     SurfaceStatePointer;
@@ -1064,7 +1079,7 @@ struct GEN8_BINDING_TABLE_EDIT_ENTRY {
 
 static inline void
 GEN8_BINDING_TABLE_EDIT_ENTRY_pack(__gen_user_data *data, void * restrict dst,
-                                  const struct GEN8_BINDING_TABLE_EDIT_ENTRY * restrict values)
+                                   const struct GEN8_BINDING_TABLE_EDIT_ENTRY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1091,7 +1106,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_EDIT_DS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_EDIT_DS_pack(__gen_user_data *data, void * restrict dst,
-                                       const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_DS * restrict values)
+                                        const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1118,6 +1133,8 @@ GEN8_3DSTATE_BINDING_TABLE_EDIT_DS_pack(__gen_user_data *data, void * restrict d
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 68
 
+#define GEN8_3DSTATE_BINDING_TABLE_EDIT_GS_length 0x00000000
+
 struct GEN8_3DSTATE_BINDING_TABLE_EDIT_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1134,7 +1151,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_EDIT_GS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_EDIT_GS_pack(__gen_user_data *data, void * restrict dst,
-                                       const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_GS * restrict values)
+                                        const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1161,6 +1178,8 @@ GEN8_3DSTATE_BINDING_TABLE_EDIT_GS_pack(__gen_user_data *data, void * restrict d
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 69
 
+#define GEN8_3DSTATE_BINDING_TABLE_EDIT_HS_length 0x00000000
+
 struct GEN8_3DSTATE_BINDING_TABLE_EDIT_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1177,7 +1196,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_EDIT_HS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_EDIT_HS_pack(__gen_user_data *data, void * restrict dst,
-                                       const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_HS * restrict values)
+                                        const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1204,6 +1223,8 @@ GEN8_3DSTATE_BINDING_TABLE_EDIT_HS_pack(__gen_user_data *data, void * restrict d
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 71
 
+#define GEN8_3DSTATE_BINDING_TABLE_EDIT_PS_length 0x00000000
+
 struct GEN8_3DSTATE_BINDING_TABLE_EDIT_PS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1220,7 +1241,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_EDIT_PS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_EDIT_PS_pack(__gen_user_data *data, void * restrict dst,
-                                       const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_PS * restrict values)
+                                        const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_PS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1247,6 +1268,8 @@ GEN8_3DSTATE_BINDING_TABLE_EDIT_PS_pack(__gen_user_data *data, void * restrict d
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 67
 
+#define GEN8_3DSTATE_BINDING_TABLE_EDIT_VS_length 0x00000000
+
 struct GEN8_3DSTATE_BINDING_TABLE_EDIT_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1263,7 +1286,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_EDIT_VS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_EDIT_VS_pack(__gen_user_data *data, void * restrict dst,
-                                       const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_VS * restrict values)
+                                        const struct GEN8_3DSTATE_BINDING_TABLE_EDIT_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1283,7 +1306,6 @@ GEN8_3DSTATE_BINDING_TABLE_EDIT_VS_pack(__gen_user_data *data, void * restrict d
    /* variable length fields follow */
 }
 
-#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS_length 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS_length_bias 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS_header\
    .CommandType          =  3,                  \
@@ -1292,6 +1314,8 @@ GEN8_3DSTATE_BINDING_TABLE_EDIT_VS_pack(__gen_user_data *data, void * restrict d
    ._3DCommandSubOpcode  = 40,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS_length 0x00000002
+
 struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1303,7 +1327,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS * restrict values)
+                                            const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1321,7 +1345,6 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS_length 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS_length_bias 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS_header\
    .CommandType          =  3,                  \
@@ -1330,6 +1353,8 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_DS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 41,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS_length 0x00000002
+
 struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1341,7 +1366,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS * restrict values)
+                                            const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1359,7 +1384,6 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS_length 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS_length_bias 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS_header\
    .CommandType          =  3,                  \
@@ -1368,6 +1392,8 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_GS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 39,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS_length 0x00000002
+
 struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1379,7 +1405,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS * restrict values)
+                                            const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1397,7 +1423,6 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS_length 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS_length_bias 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS_header\
    .CommandType          =  3,                  \
@@ -1406,6 +1431,8 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_HS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 42,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS_length 0x00000002
+
 struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1417,7 +1444,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS * restrict values)
+                                            const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1435,7 +1462,6 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS_length 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS_length_bias 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS_header\
    .CommandType          =  3,                  \
@@ -1444,6 +1470,8 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_PS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 38,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS_length 0x00000002
+
 struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1455,7 +1483,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS * restrict values)
+                                            const struct GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1473,7 +1501,6 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC_length 0x00000004
 #define GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC_length_bias 0x00000002
 #define GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC_header\
    .CommandType          =  3,                  \
@@ -1482,6 +1509,8 @@ GEN8_3DSTATE_BINDING_TABLE_POINTERS_VS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 25,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC_length 0x00000004
+
 struct GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1497,7 +1526,7 @@ struct GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC {
 
 static inline void
 GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC_pack(__gen_user_data *data, void * restrict dst,
-                                          const struct GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC * restrict values)
+                                           const struct GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1528,7 +1557,6 @@ GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC_pack(__gen_user_data *data, void * restric
 
 }
 
-#define GEN8_3DSTATE_BLEND_STATE_POINTERS_length 0x00000002
 #define GEN8_3DSTATE_BLEND_STATE_POINTERS_length_bias 0x00000002
 #define GEN8_3DSTATE_BLEND_STATE_POINTERS_header\
    .CommandType          =  3,                  \
@@ -1537,6 +1565,8 @@ GEN8_3DSTATE_BINDING_TABLE_POOL_ALLOC_pack(__gen_user_data *data, void * restric
    ._3DCommandSubOpcode  = 36,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_BLEND_STATE_POINTERS_length 0x00000002
+
 struct GEN8_3DSTATE_BLEND_STATE_POINTERS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1549,7 +1579,7 @@ struct GEN8_3DSTATE_BLEND_STATE_POINTERS {
 
 static inline void
 GEN8_3DSTATE_BLEND_STATE_POINTERS_pack(__gen_user_data *data, void * restrict dst,
-                                      const struct GEN8_3DSTATE_BLEND_STATE_POINTERS * restrict values)
+                                       const struct GEN8_3DSTATE_BLEND_STATE_POINTERS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1568,7 +1598,6 @@ GEN8_3DSTATE_BLEND_STATE_POINTERS_pack(__gen_user_data *data, void * restrict ds
 
 }
 
-#define GEN8_3DSTATE_CC_STATE_POINTERS_length 0x00000002
 #define GEN8_3DSTATE_CC_STATE_POINTERS_length_bias 0x00000002
 #define GEN8_3DSTATE_CC_STATE_POINTERS_header   \
    .CommandType          =  3,                  \
@@ -1577,6 +1606,8 @@ GEN8_3DSTATE_BLEND_STATE_POINTERS_pack(__gen_user_data *data, void * restrict ds
    ._3DCommandSubOpcode  = 14,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_CC_STATE_POINTERS_length 0x00000002
+
 struct GEN8_3DSTATE_CC_STATE_POINTERS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1589,7 +1620,7 @@ struct GEN8_3DSTATE_CC_STATE_POINTERS {
 
 static inline void
 GEN8_3DSTATE_CC_STATE_POINTERS_pack(__gen_user_data *data, void * restrict dst,
-                                   const struct GEN8_3DSTATE_CC_STATE_POINTERS * restrict values)
+                                    const struct GEN8_3DSTATE_CC_STATE_POINTERS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1608,7 +1639,6 @@ GEN8_3DSTATE_CC_STATE_POINTERS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_CHROMA_KEY_length 0x00000004
 #define GEN8_3DSTATE_CHROMA_KEY_length_bias 0x00000002
 #define GEN8_3DSTATE_CHROMA_KEY_header          \
    .CommandType          =  3,                  \
@@ -1617,6 +1647,8 @@ GEN8_3DSTATE_CC_STATE_POINTERS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  4,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_CHROMA_KEY_length 0x00000004
+
 struct GEN8_3DSTATE_CHROMA_KEY {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1630,7 +1662,7 @@ struct GEN8_3DSTATE_CHROMA_KEY {
 
 static inline void
 GEN8_3DSTATE_CHROMA_KEY_pack(__gen_user_data *data, void * restrict dst,
-                            const struct GEN8_3DSTATE_CHROMA_KEY * restrict values)
+                             const struct GEN8_3DSTATE_CHROMA_KEY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1656,7 +1688,6 @@ GEN8_3DSTATE_CHROMA_KEY_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_CLEAR_PARAMS_length 0x00000003
 #define GEN8_3DSTATE_CLEAR_PARAMS_length_bias 0x00000002
 #define GEN8_3DSTATE_CLEAR_PARAMS_header        \
    .CommandType          =  3,                  \
@@ -1665,6 +1696,8 @@ GEN8_3DSTATE_CHROMA_KEY_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  4,                  \
    .DwordLength          =  1
 
+#define GEN8_3DSTATE_CLEAR_PARAMS_length 0x00000003
+
 struct GEN8_3DSTATE_CLEAR_PARAMS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1677,7 +1710,7 @@ struct GEN8_3DSTATE_CLEAR_PARAMS {
 
 static inline void
 GEN8_3DSTATE_CLEAR_PARAMS_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_3DSTATE_CLEAR_PARAMS * restrict values)
+                               const struct GEN8_3DSTATE_CLEAR_PARAMS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1699,7 +1732,6 @@ GEN8_3DSTATE_CLEAR_PARAMS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_CLIP_length 0x00000004
 #define GEN8_3DSTATE_CLIP_length_bias 0x00000002
 #define GEN8_3DSTATE_CLIP_header                \
    .CommandType          =  3,                  \
@@ -1708,6 +1740,8 @@ GEN8_3DSTATE_CLEAR_PARAMS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 18,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_CLIP_length 0x00000004
+
 struct GEN8_3DSTATE_CLIP {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1752,7 +1786,7 @@ struct GEN8_3DSTATE_CLIP {
 
 static inline void
 GEN8_3DSTATE_CLIP_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_3DSTATE_CLIP * restrict values)
+                       const struct GEN8_3DSTATE_CLIP * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1797,7 +1831,6 @@ GEN8_3DSTATE_CLIP_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_CONSTANT_DS_length 0x0000000b
 #define GEN8_3DSTATE_CONSTANT_DS_length_bias 0x00000002
 #define GEN8_3DSTATE_CONSTANT_DS_header         \
    .CommandType          =  3,                  \
@@ -1806,6 +1839,10 @@ GEN8_3DSTATE_CLIP_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 26,                  \
    .DwordLength          =  9
 
+#define GEN8_3DSTATE_CONSTANT_DS_length 0x0000000b
+
+#define GEN8_3DSTATE_CONSTANT_BODY_length 0x0000000a
+
 struct GEN8_3DSTATE_CONSTANT_BODY {
    uint32_t                                     ConstantBuffer1ReadLength;
    uint32_t                                     ConstantBuffer0ReadLength;
@@ -1819,7 +1856,7 @@ struct GEN8_3DSTATE_CONSTANT_BODY {
 
 static inline void
 GEN8_3DSTATE_CONSTANT_BODY_pack(__gen_user_data *data, void * restrict dst,
-                               const struct GEN8_3DSTATE_CONSTANT_BODY * restrict values)
+                                const struct GEN8_3DSTATE_CONSTANT_BODY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1883,7 +1920,7 @@ struct GEN8_3DSTATE_CONSTANT_DS {
 
 static inline void
 GEN8_3DSTATE_CONSTANT_DS_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_CONSTANT_DS * restrict values)
+                              const struct GEN8_3DSTATE_CONSTANT_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1901,7 +1938,6 @@ GEN8_3DSTATE_CONSTANT_DS_pack(__gen_user_data *data, void * restrict dst,
    GEN8_3DSTATE_CONSTANT_BODY_pack(data, &dw[1], &values->ConstantBody);
 }
 
-#define GEN8_3DSTATE_CONSTANT_GS_length 0x0000000b
 #define GEN8_3DSTATE_CONSTANT_GS_length_bias 0x00000002
 #define GEN8_3DSTATE_CONSTANT_GS_header         \
    .CommandType          =  3,                  \
@@ -1910,6 +1946,8 @@ GEN8_3DSTATE_CONSTANT_DS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 22,                  \
    .DwordLength          =  9
 
+#define GEN8_3DSTATE_CONSTANT_GS_length 0x0000000b
+
 struct GEN8_3DSTATE_CONSTANT_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1922,7 +1960,7 @@ struct GEN8_3DSTATE_CONSTANT_GS {
 
 static inline void
 GEN8_3DSTATE_CONSTANT_GS_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_CONSTANT_GS * restrict values)
+                              const struct GEN8_3DSTATE_CONSTANT_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1940,7 +1978,6 @@ GEN8_3DSTATE_CONSTANT_GS_pack(__gen_user_data *data, void * restrict dst,
    GEN8_3DSTATE_CONSTANT_BODY_pack(data, &dw[1], &values->ConstantBody);
 }
 
-#define GEN8_3DSTATE_CONSTANT_HS_length 0x0000000b
 #define GEN8_3DSTATE_CONSTANT_HS_length_bias 0x00000002
 #define GEN8_3DSTATE_CONSTANT_HS_header         \
    .CommandType          =  3,                  \
@@ -1949,6 +1986,8 @@ GEN8_3DSTATE_CONSTANT_GS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 25,                  \
    .DwordLength          =  9
 
+#define GEN8_3DSTATE_CONSTANT_HS_length 0x0000000b
+
 struct GEN8_3DSTATE_CONSTANT_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -1961,7 +2000,7 @@ struct GEN8_3DSTATE_CONSTANT_HS {
 
 static inline void
 GEN8_3DSTATE_CONSTANT_HS_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_CONSTANT_HS * restrict values)
+                              const struct GEN8_3DSTATE_CONSTANT_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -1979,7 +2018,6 @@ GEN8_3DSTATE_CONSTANT_HS_pack(__gen_user_data *data, void * restrict dst,
    GEN8_3DSTATE_CONSTANT_BODY_pack(data, &dw[1], &values->ConstantBody);
 }
 
-#define GEN8_3DSTATE_CONSTANT_PS_length 0x0000000b
 #define GEN8_3DSTATE_CONSTANT_PS_length_bias 0x00000002
 #define GEN8_3DSTATE_CONSTANT_PS_header         \
    .CommandType          =  3,                  \
@@ -1988,6 +2026,8 @@ GEN8_3DSTATE_CONSTANT_HS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 23,                  \
    .DwordLength          =  9
 
+#define GEN8_3DSTATE_CONSTANT_PS_length 0x0000000b
+
 struct GEN8_3DSTATE_CONSTANT_PS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2000,7 +2040,7 @@ struct GEN8_3DSTATE_CONSTANT_PS {
 
 static inline void
 GEN8_3DSTATE_CONSTANT_PS_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_CONSTANT_PS * restrict values)
+                              const struct GEN8_3DSTATE_CONSTANT_PS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2018,7 +2058,6 @@ GEN8_3DSTATE_CONSTANT_PS_pack(__gen_user_data *data, void * restrict dst,
    GEN8_3DSTATE_CONSTANT_BODY_pack(data, &dw[1], &values->ConstantBody);
 }
 
-#define GEN8_3DSTATE_CONSTANT_VS_length 0x0000000b
 #define GEN8_3DSTATE_CONSTANT_VS_length_bias 0x00000002
 #define GEN8_3DSTATE_CONSTANT_VS_header         \
    .CommandType          =  3,                  \
@@ -2027,6 +2066,8 @@ GEN8_3DSTATE_CONSTANT_PS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 21,                  \
    .DwordLength          =  9
 
+#define GEN8_3DSTATE_CONSTANT_VS_length 0x0000000b
+
 struct GEN8_3DSTATE_CONSTANT_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2039,7 +2080,7 @@ struct GEN8_3DSTATE_CONSTANT_VS {
 
 static inline void
 GEN8_3DSTATE_CONSTANT_VS_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_CONSTANT_VS * restrict values)
+                              const struct GEN8_3DSTATE_CONSTANT_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2057,7 +2098,6 @@ GEN8_3DSTATE_CONSTANT_VS_pack(__gen_user_data *data, void * restrict dst,
    GEN8_3DSTATE_CONSTANT_BODY_pack(data, &dw[1], &values->ConstantBody);
 }
 
-#define GEN8_3DSTATE_DEPTH_BUFFER_length 0x00000008
 #define GEN8_3DSTATE_DEPTH_BUFFER_length_bias 0x00000002
 #define GEN8_3DSTATE_DEPTH_BUFFER_header        \
    .CommandType          =  3,                  \
@@ -2066,6 +2106,8 @@ GEN8_3DSTATE_CONSTANT_VS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  5,                  \
    .DwordLength          =  6
 
+#define GEN8_3DSTATE_DEPTH_BUFFER_length 0x00000008
+
 struct GEN8_3DSTATE_DEPTH_BUFFER {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2099,7 +2141,7 @@ struct GEN8_3DSTATE_DEPTH_BUFFER {
 
 static inline void
 GEN8_3DSTATE_DEPTH_BUFFER_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_3DSTATE_DEPTH_BUFFER * restrict values)
+                               const struct GEN8_3DSTATE_DEPTH_BUFFER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2153,7 +2195,6 @@ GEN8_3DSTATE_DEPTH_BUFFER_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_DRAWING_RECTANGLE_length 0x00000004
 #define GEN8_3DSTATE_DRAWING_RECTANGLE_length_bias 0x00000002
 #define GEN8_3DSTATE_DRAWING_RECTANGLE_header   \
    .CommandType          =  3,                  \
@@ -2162,6 +2203,8 @@ GEN8_3DSTATE_DEPTH_BUFFER_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  0,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_DRAWING_RECTANGLE_length 0x00000004
+
 struct GEN8_3DSTATE_DRAWING_RECTANGLE {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2182,7 +2225,7 @@ struct GEN8_3DSTATE_DRAWING_RECTANGLE {
 
 static inline void
 GEN8_3DSTATE_DRAWING_RECTANGLE_pack(__gen_user_data *data, void * restrict dst,
-                                   const struct GEN8_3DSTATE_DRAWING_RECTANGLE * restrict values)
+                                    const struct GEN8_3DSTATE_DRAWING_RECTANGLE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2212,7 +2255,6 @@ GEN8_3DSTATE_DRAWING_RECTANGLE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_DS_length 0x00000009
 #define GEN8_3DSTATE_DS_length_bias 0x00000002
 #define GEN8_3DSTATE_DS_header                  \
    .CommandType          =  3,                  \
@@ -2221,6 +2263,8 @@ GEN8_3DSTATE_DRAWING_RECTANGLE_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 29,                  \
    .DwordLength          =  7
 
+#define GEN8_3DSTATE_DS_length 0x00000009
+
 struct GEN8_3DSTATE_DS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2269,7 +2313,7 @@ struct GEN8_3DSTATE_DS {
 
 static inline void
 GEN8_3DSTATE_DS_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_DS * restrict values)
+                     const struct GEN8_3DSTATE_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2339,6 +2383,10 @@ GEN8_3DSTATE_DS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 55
 
+#define GEN8_3DSTATE_GATHER_CONSTANT_DS_length 0x00000000
+
+#define GEN8_GATHER_CONSTANT_ENTRY_length 0x00000001
+
 struct GEN8_GATHER_CONSTANT_ENTRY {
    uint32_t                                     ConstantBufferOffset;
    uint32_t                                     ChannelMask;
@@ -2347,7 +2395,7 @@ struct GEN8_GATHER_CONSTANT_ENTRY {
 
 static inline void
 GEN8_GATHER_CONSTANT_ENTRY_pack(__gen_user_data *data, void * restrict dst,
-                               const struct GEN8_GATHER_CONSTANT_ENTRY * restrict values)
+                                const struct GEN8_GATHER_CONSTANT_ENTRY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2374,7 +2422,7 @@ struct GEN8_3DSTATE_GATHER_CONSTANT_DS {
 
 static inline void
 GEN8_3DSTATE_GATHER_CONSTANT_DS_pack(__gen_user_data *data, void * restrict dst,
-                                    const struct GEN8_3DSTATE_GATHER_CONSTANT_DS * restrict values)
+                                     const struct GEN8_3DSTATE_GATHER_CONSTANT_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2406,6 +2454,8 @@ GEN8_3DSTATE_GATHER_CONSTANT_DS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 53
 
+#define GEN8_3DSTATE_GATHER_CONSTANT_GS_length 0x00000000
+
 struct GEN8_3DSTATE_GATHER_CONSTANT_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2421,7 +2471,7 @@ struct GEN8_3DSTATE_GATHER_CONSTANT_GS {
 
 static inline void
 GEN8_3DSTATE_GATHER_CONSTANT_GS_pack(__gen_user_data *data, void * restrict dst,
-                                    const struct GEN8_3DSTATE_GATHER_CONSTANT_GS * restrict values)
+                                     const struct GEN8_3DSTATE_GATHER_CONSTANT_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2453,6 +2503,8 @@ GEN8_3DSTATE_GATHER_CONSTANT_GS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 54
 
+#define GEN8_3DSTATE_GATHER_CONSTANT_HS_length 0x00000000
+
 struct GEN8_3DSTATE_GATHER_CONSTANT_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2468,7 +2520,7 @@ struct GEN8_3DSTATE_GATHER_CONSTANT_HS {
 
 static inline void
 GEN8_3DSTATE_GATHER_CONSTANT_HS_pack(__gen_user_data *data, void * restrict dst,
-                                    const struct GEN8_3DSTATE_GATHER_CONSTANT_HS * restrict values)
+                                     const struct GEN8_3DSTATE_GATHER_CONSTANT_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2500,6 +2552,8 @@ GEN8_3DSTATE_GATHER_CONSTANT_HS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 56
 
+#define GEN8_3DSTATE_GATHER_CONSTANT_PS_length 0x00000000
+
 struct GEN8_3DSTATE_GATHER_CONSTANT_PS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2516,7 +2570,7 @@ struct GEN8_3DSTATE_GATHER_CONSTANT_PS {
 
 static inline void
 GEN8_3DSTATE_GATHER_CONSTANT_PS_pack(__gen_user_data *data, void * restrict dst,
-                                    const struct GEN8_3DSTATE_GATHER_CONSTANT_PS * restrict values)
+                                     const struct GEN8_3DSTATE_GATHER_CONSTANT_PS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2549,6 +2603,8 @@ GEN8_3DSTATE_GATHER_CONSTANT_PS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 52
 
+#define GEN8_3DSTATE_GATHER_CONSTANT_VS_length 0x00000000
+
 struct GEN8_3DSTATE_GATHER_CONSTANT_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2565,7 +2621,7 @@ struct GEN8_3DSTATE_GATHER_CONSTANT_VS {
 
 static inline void
 GEN8_3DSTATE_GATHER_CONSTANT_VS_pack(__gen_user_data *data, void * restrict dst,
-                                    const struct GEN8_3DSTATE_GATHER_CONSTANT_VS * restrict values)
+                                     const struct GEN8_3DSTATE_GATHER_CONSTANT_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2591,7 +2647,6 @@ GEN8_3DSTATE_GATHER_CONSTANT_VS_pack(__gen_user_data *data, void * restrict dst,
    /* variable length fields follow */
 }
 
-#define GEN8_3DSTATE_GATHER_POOL_ALLOC_length 0x00000004
 #define GEN8_3DSTATE_GATHER_POOL_ALLOC_length_bias 0x00000002
 #define GEN8_3DSTATE_GATHER_POOL_ALLOC_header   \
    .CommandType          =  3,                  \
@@ -2600,6 +2655,8 @@ GEN8_3DSTATE_GATHER_CONSTANT_VS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 26,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_GATHER_POOL_ALLOC_length 0x00000004
+
 struct GEN8_3DSTATE_GATHER_POOL_ALLOC {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2614,7 +2671,7 @@ struct GEN8_3DSTATE_GATHER_POOL_ALLOC {
 
 static inline void
 GEN8_3DSTATE_GATHER_POOL_ALLOC_pack(__gen_user_data *data, void * restrict dst,
-                                   const struct GEN8_3DSTATE_GATHER_POOL_ALLOC * restrict values)
+                                    const struct GEN8_3DSTATE_GATHER_POOL_ALLOC * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2645,7 +2702,6 @@ GEN8_3DSTATE_GATHER_POOL_ALLOC_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_GS_length 0x0000000a
 #define GEN8_3DSTATE_GS_length_bias 0x00000002
 #define GEN8_3DSTATE_GS_header                  \
    .CommandType          =  3,                  \
@@ -2654,6 +2710,8 @@ GEN8_3DSTATE_GATHER_POOL_ALLOC_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 17,                  \
    .DwordLength          =  8
 
+#define GEN8_3DSTATE_GS_length 0x0000000a
+
 struct GEN8_3DSTATE_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2722,7 +2780,7 @@ struct GEN8_3DSTATE_GS {
 
 static inline void
 GEN8_3DSTATE_GS_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_GS * restrict values)
+                     const struct GEN8_3DSTATE_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2802,7 +2860,6 @@ GEN8_3DSTATE_GS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_HIER_DEPTH_BUFFER_length 0x00000005
 #define GEN8_3DSTATE_HIER_DEPTH_BUFFER_length_bias 0x00000002
 #define GEN8_3DSTATE_HIER_DEPTH_BUFFER_header   \
    .CommandType          =  3,                  \
@@ -2811,6 +2868,8 @@ GEN8_3DSTATE_GS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  7,                  \
    .DwordLength          =  3
 
+#define GEN8_3DSTATE_HIER_DEPTH_BUFFER_length 0x00000005
+
 struct GEN8_3DSTATE_HIER_DEPTH_BUFFER {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2825,7 +2884,7 @@ struct GEN8_3DSTATE_HIER_DEPTH_BUFFER {
 
 static inline void
 GEN8_3DSTATE_HIER_DEPTH_BUFFER_pack(__gen_user_data *data, void * restrict dst,
-                                   const struct GEN8_3DSTATE_HIER_DEPTH_BUFFER * restrict values)
+                                    const struct GEN8_3DSTATE_HIER_DEPTH_BUFFER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2859,7 +2918,6 @@ GEN8_3DSTATE_HIER_DEPTH_BUFFER_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_HS_length 0x00000009
 #define GEN8_3DSTATE_HS_length_bias 0x00000002
 #define GEN8_3DSTATE_HS_header                  \
    .CommandType          =  3,                  \
@@ -2868,6 +2926,8 @@ GEN8_3DSTATE_HIER_DEPTH_BUFFER_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 27,                  \
    .DwordLength          =  7
 
+#define GEN8_3DSTATE_HS_length 0x00000009
+
 struct GEN8_3DSTATE_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2909,7 +2969,7 @@ struct GEN8_3DSTATE_HS {
 
 static inline void
 GEN8_3DSTATE_HS_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_HS * restrict values)
+                     const struct GEN8_3DSTATE_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -2967,7 +3027,6 @@ GEN8_3DSTATE_HS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_INDEX_BUFFER_length 0x00000005
 #define GEN8_3DSTATE_INDEX_BUFFER_length_bias 0x00000002
 #define GEN8_3DSTATE_INDEX_BUFFER_header        \
    .CommandType          =  3,                  \
@@ -2976,6 +3035,8 @@ GEN8_3DSTATE_HS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 10,                  \
    .DwordLength          =  3
 
+#define GEN8_3DSTATE_INDEX_BUFFER_length 0x00000005
+
 struct GEN8_3DSTATE_INDEX_BUFFER {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -2993,7 +3054,7 @@ struct GEN8_3DSTATE_INDEX_BUFFER {
 
 static inline void
 GEN8_3DSTATE_INDEX_BUFFER_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_3DSTATE_INDEX_BUFFER * restrict values)
+                               const struct GEN8_3DSTATE_INDEX_BUFFER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3027,7 +3088,6 @@ GEN8_3DSTATE_INDEX_BUFFER_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_LINE_STIPPLE_length 0x00000003
 #define GEN8_3DSTATE_LINE_STIPPLE_length_bias 0x00000002
 #define GEN8_3DSTATE_LINE_STIPPLE_header        \
    .CommandType          =  3,                  \
@@ -3036,6 +3096,8 @@ GEN8_3DSTATE_INDEX_BUFFER_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  8,                  \
    .DwordLength          =  1
 
+#define GEN8_3DSTATE_LINE_STIPPLE_length 0x00000003
+
 struct GEN8_3DSTATE_LINE_STIPPLE {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3052,7 +3114,7 @@ struct GEN8_3DSTATE_LINE_STIPPLE {
 
 static inline void
 GEN8_3DSTATE_LINE_STIPPLE_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_3DSTATE_LINE_STIPPLE * restrict values)
+                               const struct GEN8_3DSTATE_LINE_STIPPLE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3078,7 +3140,6 @@ GEN8_3DSTATE_LINE_STIPPLE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_MONOFILTER_SIZE_length 0x00000002
 #define GEN8_3DSTATE_MONOFILTER_SIZE_length_bias 0x00000002
 #define GEN8_3DSTATE_MONOFILTER_SIZE_header     \
    .CommandType          =  3,                  \
@@ -3087,6 +3148,8 @@ GEN8_3DSTATE_LINE_STIPPLE_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 17,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_MONOFILTER_SIZE_length 0x00000002
+
 struct GEN8_3DSTATE_MONOFILTER_SIZE {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3099,7 +3162,7 @@ struct GEN8_3DSTATE_MONOFILTER_SIZE {
 
 static inline void
 GEN8_3DSTATE_MONOFILTER_SIZE_pack(__gen_user_data *data, void * restrict dst,
-                                 const struct GEN8_3DSTATE_MONOFILTER_SIZE * restrict values)
+                                  const struct GEN8_3DSTATE_MONOFILTER_SIZE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3118,7 +3181,6 @@ GEN8_3DSTATE_MONOFILTER_SIZE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_MULTISAMPLE_length 0x00000002
 #define GEN8_3DSTATE_MULTISAMPLE_length_bias 0x00000002
 #define GEN8_3DSTATE_MULTISAMPLE_header         \
    .CommandType          =  3,                  \
@@ -3127,6 +3189,8 @@ GEN8_3DSTATE_MONOFILTER_SIZE_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 13,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_MULTISAMPLE_length 0x00000002
+
 struct GEN8_3DSTATE_MULTISAMPLE {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3142,7 +3206,7 @@ struct GEN8_3DSTATE_MULTISAMPLE {
 
 static inline void
 GEN8_3DSTATE_MULTISAMPLE_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_MULTISAMPLE * restrict values)
+                              const struct GEN8_3DSTATE_MULTISAMPLE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3162,7 +3226,6 @@ GEN8_3DSTATE_MULTISAMPLE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_POLY_STIPPLE_OFFSET_length 0x00000002
 #define GEN8_3DSTATE_POLY_STIPPLE_OFFSET_length_bias 0x00000002
 #define GEN8_3DSTATE_POLY_STIPPLE_OFFSET_header \
    .CommandType          =  3,                  \
@@ -3171,6 +3234,8 @@ GEN8_3DSTATE_MULTISAMPLE_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  6,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_POLY_STIPPLE_OFFSET_length 0x00000002
+
 struct GEN8_3DSTATE_POLY_STIPPLE_OFFSET {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3183,7 +3248,7 @@ struct GEN8_3DSTATE_POLY_STIPPLE_OFFSET {
 
 static inline void
 GEN8_3DSTATE_POLY_STIPPLE_OFFSET_pack(__gen_user_data *data, void * restrict dst,
-                                     const struct GEN8_3DSTATE_POLY_STIPPLE_OFFSET * restrict values)
+                                      const struct GEN8_3DSTATE_POLY_STIPPLE_OFFSET * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3202,7 +3267,6 @@ GEN8_3DSTATE_POLY_STIPPLE_OFFSET_pack(__gen_user_data *data, void * restrict dst
 
 }
 
-#define GEN8_3DSTATE_POLY_STIPPLE_PATTERN_length 0x00000021
 #define GEN8_3DSTATE_POLY_STIPPLE_PATTERN_length_bias 0x00000002
 #define GEN8_3DSTATE_POLY_STIPPLE_PATTERN_header\
    .CommandType          =  3,                  \
@@ -3211,18 +3275,20 @@ GEN8_3DSTATE_POLY_STIPPLE_OFFSET_pack(__gen_user_data *data, void * restrict dst
    ._3DCommandSubOpcode  =  7,                  \
    .DwordLength          = 31
 
+#define GEN8_3DSTATE_POLY_STIPPLE_PATTERN_length 0x00000021
+
 struct GEN8_3DSTATE_POLY_STIPPLE_PATTERN {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
    uint32_t                                     _3DCommandOpcode;
    uint32_t                                     _3DCommandSubOpcode;
    uint32_t                                     DwordLength;
-   uint32_t                                     PatternRow;
+   uint32_t                                     PatternRow[32];
 };
 
 static inline void
 GEN8_3DSTATE_POLY_STIPPLE_PATTERN_pack(__gen_user_data *data, void * restrict dst,
-                                      const struct GEN8_3DSTATE_POLY_STIPPLE_PATTERN * restrict values)
+                                       const struct GEN8_3DSTATE_POLY_STIPPLE_PATTERN * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3234,13 +3300,14 @@ GEN8_3DSTATE_POLY_STIPPLE_PATTERN_pack(__gen_user_data *data, void * restrict ds
       __gen_field(values->DwordLength, 0, 7) |
       0;
 
-   dw[1] =
-      __gen_field(values->PatternRow, 0, 31) |
-      0;
+   for (uint32_t i = 0, j = 1; i < 32; i += 1, j++) {
+      dw[j] =
+         __gen_field(values->PatternRow[i + 0], 0, 31) |
+         0;
+   }
 
 }
 
-#define GEN8_3DSTATE_PS_length 0x0000000c
 #define GEN8_3DSTATE_PS_length_bias 0x00000002
 #define GEN8_3DSTATE_PS_header                  \
    .CommandType          =  3,                  \
@@ -3249,6 +3316,8 @@ GEN8_3DSTATE_POLY_STIPPLE_PATTERN_pack(__gen_user_data *data, void * restrict ds
    ._3DCommandSubOpcode  = 32,                  \
    .DwordLength          = 10
 
+#define GEN8_3DSTATE_PS_length 0x0000000c
+
 struct GEN8_3DSTATE_PS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3308,7 +3377,7 @@ struct GEN8_3DSTATE_PS {
 
 static inline void
 GEN8_3DSTATE_PS_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_PS * restrict values)
+                     const struct GEN8_3DSTATE_PS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3382,7 +3451,6 @@ GEN8_3DSTATE_PS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_PS_BLEND_length 0x00000002
 #define GEN8_3DSTATE_PS_BLEND_length_bias 0x00000002
 #define GEN8_3DSTATE_PS_BLEND_header            \
    .CommandType          =  3,                  \
@@ -3391,6 +3459,8 @@ GEN8_3DSTATE_PS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 77,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_PS_BLEND_length 0x00000002
+
 struct GEN8_3DSTATE_PS_BLEND {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3410,7 +3480,7 @@ struct GEN8_3DSTATE_PS_BLEND {
 
 static inline void
 GEN8_3DSTATE_PS_BLEND_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_3DSTATE_PS_BLEND * restrict values)
+                           const struct GEN8_3DSTATE_PS_BLEND * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3436,7 +3506,6 @@ GEN8_3DSTATE_PS_BLEND_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_PS_EXTRA_length 0x00000002
 #define GEN8_3DSTATE_PS_EXTRA_length_bias 0x00000002
 #define GEN8_3DSTATE_PS_EXTRA_header            \
    .CommandType          =  3,                  \
@@ -3445,6 +3514,8 @@ GEN8_3DSTATE_PS_BLEND_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 79,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_PS_EXTRA_length 0x00000002
+
 struct GEN8_3DSTATE_PS_EXTRA {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3473,7 +3544,7 @@ struct GEN8_3DSTATE_PS_EXTRA {
 
 static inline void
 GEN8_3DSTATE_PS_EXTRA_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_3DSTATE_PS_EXTRA * restrict values)
+                           const struct GEN8_3DSTATE_PS_EXTRA * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3504,7 +3575,6 @@ GEN8_3DSTATE_PS_EXTRA_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS_length 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS_length_bias 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS_header\
    .CommandType          =  3,                  \
@@ -3513,6 +3583,8 @@ GEN8_3DSTATE_PS_EXTRA_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 20,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS_length 0x00000002
+
 struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3525,7 +3597,7 @@ struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS {
 
 static inline void
 GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS_pack(__gen_user_data *data, void * restrict dst,
-                                        const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS * restrict values)
+                                         const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3544,7 +3616,6 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS_pack(__gen_user_data *data, void * restrict
 
 }
 
-#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS_length 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS_length_bias 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS_header\
    .CommandType          =  3,                  \
@@ -3553,6 +3624,8 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_DS_pack(__gen_user_data *data, void * restrict
    ._3DCommandSubOpcode  = 21,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS_length 0x00000002
+
 struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3565,7 +3638,7 @@ struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS {
 
 static inline void
 GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS_pack(__gen_user_data *data, void * restrict dst,
-                                        const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS * restrict values)
+                                         const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3584,7 +3657,6 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS_pack(__gen_user_data *data, void * restrict
 
 }
 
-#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS_length 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS_length_bias 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS_header\
    .CommandType          =  3,                  \
@@ -3593,6 +3665,8 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_GS_pack(__gen_user_data *data, void * restrict
    ._3DCommandSubOpcode  = 19,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS_length 0x00000002
+
 struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3605,7 +3679,7 @@ struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS {
 
 static inline void
 GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS_pack(__gen_user_data *data, void * restrict dst,
-                                        const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS * restrict values)
+                                         const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3624,7 +3698,6 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS_pack(__gen_user_data *data, void * restrict
 
 }
 
-#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS_length 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS_length_bias 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS_header\
    .CommandType          =  3,                  \
@@ -3633,6 +3706,8 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_HS_pack(__gen_user_data *data, void * restrict
    ._3DCommandSubOpcode  = 22,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS_length 0x00000002
+
 struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3645,7 +3720,7 @@ struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS {
 
 static inline void
 GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS_pack(__gen_user_data *data, void * restrict dst,
-                                        const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS * restrict values)
+                                         const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3664,7 +3739,6 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS_pack(__gen_user_data *data, void * restrict
 
 }
 
-#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS_length 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS_length_bias 0x00000002
 #define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS_header\
    .CommandType          =  3,                  \
@@ -3673,6 +3747,8 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_PS_pack(__gen_user_data *data, void * restrict
    ._3DCommandSubOpcode  = 18,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS_length 0x00000002
+
 struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3685,7 +3761,7 @@ struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS {
 
 static inline void
 GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS_pack(__gen_user_data *data, void * restrict dst,
-                                        const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS * restrict values)
+                                         const struct GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3704,7 +3780,6 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS_pack(__gen_user_data *data, void * restrict
 
 }
 
-#define GEN8_3DSTATE_RASTER_length 0x00000005
 #define GEN8_3DSTATE_RASTER_length_bias 0x00000002
 #define GEN8_3DSTATE_RASTER_header              \
    .CommandType          =  3,                  \
@@ -3713,6 +3788,8 @@ GEN8_3DSTATE_PUSH_CONSTANT_ALLOC_VS_pack(__gen_user_data *data, void * restrict
    ._3DCommandSubOpcode  = 80,                  \
    .DwordLength          =  3
 
+#define GEN8_3DSTATE_RASTER_length 0x00000005
+
 struct GEN8_3DSTATE_RASTER {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3769,7 +3846,7 @@ struct GEN8_3DSTATE_RASTER {
 
 static inline void
 GEN8_3DSTATE_RASTER_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_3DSTATE_RASTER * restrict values)
+                         const struct GEN8_3DSTATE_RASTER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3821,6 +3898,10 @@ GEN8_3DSTATE_RASTER_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  1,                  \
    ._3DCommandSubOpcode  =  2
 
+#define GEN8_3DSTATE_SAMPLER_PALETTE_LOAD0_length 0x00000000
+
+#define GEN8_PALETTE_ENTRY_length 0x00000001
+
 struct GEN8_PALETTE_ENTRY {
    uint32_t                                     Alpha;
    uint32_t                                     Red;
@@ -3830,7 +3911,7 @@ struct GEN8_PALETTE_ENTRY {
 
 static inline void
 GEN8_PALETTE_ENTRY_pack(__gen_user_data *data, void * restrict dst,
-                       const struct GEN8_PALETTE_ENTRY * restrict values)
+                        const struct GEN8_PALETTE_ENTRY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3854,7 +3935,7 @@ struct GEN8_3DSTATE_SAMPLER_PALETTE_LOAD0 {
 
 static inline void
 GEN8_3DSTATE_SAMPLER_PALETTE_LOAD0_pack(__gen_user_data *data, void * restrict dst,
-                                       const struct GEN8_3DSTATE_SAMPLER_PALETTE_LOAD0 * restrict values)
+                                        const struct GEN8_3DSTATE_SAMPLER_PALETTE_LOAD0 * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3876,6 +3957,8 @@ GEN8_3DSTATE_SAMPLER_PALETTE_LOAD0_pack(__gen_user_data *data, void * restrict d
    ._3DCommandOpcode     =  1,                  \
    ._3DCommandSubOpcode  = 12
 
+#define GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1_length 0x00000000
+
 struct GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1 {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3887,7 +3970,7 @@ struct GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1 {
 
 static inline void
 GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1_pack(__gen_user_data *data, void * restrict dst,
-                                       const struct GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1 * restrict values)
+                                        const struct GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1 * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3902,7 +3985,6 @@ GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1_pack(__gen_user_data *data, void * restrict d
    /* variable length fields follow */
 }
 
-#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS_length 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS_length_bias 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS_header\
    .CommandType          =  3,                  \
@@ -3911,6 +3993,8 @@ GEN8_3DSTATE_SAMPLER_PALETTE_LOAD1_pack(__gen_user_data *data, void * restrict d
    ._3DCommandSubOpcode  = 45,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS_length 0x00000002
+
 struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3922,7 +4006,7 @@ struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS {
 
 static inline void
 GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS * restrict values)
+                                            const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3940,7 +4024,6 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS_length 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS_length_bias 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS_header\
    .CommandType          =  3,                  \
@@ -3949,6 +4032,8 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_DS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 46,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS_length 0x00000002
+
 struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3960,7 +4045,7 @@ struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS {
 
 static inline void
 GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS * restrict values)
+                                            const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -3978,7 +4063,6 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS_length 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS_length_bias 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS_header\
    .CommandType          =  3,                  \
@@ -3987,6 +4071,8 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_GS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 44,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS_length 0x00000002
+
 struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -3998,7 +4084,7 @@ struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS {
 
 static inline void
 GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS * restrict values)
+                                            const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4016,7 +4102,6 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS_length 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS_length_bias 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS_header\
    .CommandType          =  3,                  \
@@ -4025,6 +4110,8 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_HS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 47,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS_length 0x00000002
+
 struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4036,7 +4123,7 @@ struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS {
 
 static inline void
 GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS * restrict values)
+                                            const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4054,7 +4141,6 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS_length 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS_length_bias 0x00000002
 #define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS_header\
    .CommandType          =  3,                  \
@@ -4063,6 +4149,8 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_PS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 43,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS_length 0x00000002
+
 struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4074,7 +4162,7 @@ struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS {
 
 static inline void
 GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS_pack(__gen_user_data *data, void * restrict dst,
-                                           const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS * restrict values)
+                                            const struct GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4092,7 +4180,6 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS_pack(__gen_user_data *data, void * restri
 
 }
 
-#define GEN8_3DSTATE_SAMPLE_MASK_length 0x00000002
 #define GEN8_3DSTATE_SAMPLE_MASK_length_bias 0x00000002
 #define GEN8_3DSTATE_SAMPLE_MASK_header         \
    .CommandType          =  3,                  \
@@ -4101,6 +4188,8 @@ GEN8_3DSTATE_SAMPLER_STATE_POINTERS_VS_pack(__gen_user_data *data, void * restri
    ._3DCommandSubOpcode  = 24,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_SAMPLE_MASK_length 0x00000002
+
 struct GEN8_3DSTATE_SAMPLE_MASK {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4112,7 +4201,7 @@ struct GEN8_3DSTATE_SAMPLE_MASK {
 
 static inline void
 GEN8_3DSTATE_SAMPLE_MASK_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_SAMPLE_MASK * restrict values)
+                              const struct GEN8_3DSTATE_SAMPLE_MASK * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4130,7 +4219,6 @@ GEN8_3DSTATE_SAMPLE_MASK_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_SAMPLE_PATTERN_length 0x00000009
 #define GEN8_3DSTATE_SAMPLE_PATTERN_length_bias 0x00000002
 #define GEN8_3DSTATE_SAMPLE_PATTERN_header      \
    .CommandType          =  3,                  \
@@ -4139,6 +4227,8 @@ GEN8_3DSTATE_SAMPLE_MASK_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 28,                  \
    .DwordLength          =  7
 
+#define GEN8_3DSTATE_SAMPLE_PATTERN_length 0x00000009
+
 struct GEN8_3DSTATE_SAMPLE_PATTERN {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4179,7 +4269,7 @@ struct GEN8_3DSTATE_SAMPLE_PATTERN {
 
 static inline void
 GEN8_3DSTATE_SAMPLE_PATTERN_pack(__gen_user_data *data, void * restrict dst,
-                                const struct GEN8_3DSTATE_SAMPLE_PATTERN * restrict values)
+                                 const struct GEN8_3DSTATE_SAMPLE_PATTERN * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4191,8 +4281,10 @@ GEN8_3DSTATE_SAMPLE_PATTERN_pack(__gen_user_data *data, void * restrict dst,
       __gen_field(values->DwordLength, 0, 7) |
       0;
 
-   dw[1] =
-      0;
+   for (uint32_t i = 0, j = 1; i < 4; i += 1, j++) {
+      dw[j] =
+         0;
+   }
 
    dw[5] =
       __gen_field(values->_8xSample7XOffset * (1 << 4), 28, 31) |
@@ -4238,7 +4330,6 @@ GEN8_3DSTATE_SAMPLE_PATTERN_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_SBE_length 0x00000004
 #define GEN8_3DSTATE_SBE_length_bias 0x00000002
 #define GEN8_3DSTATE_SBE_header                 \
    .CommandType          =  3,                  \
@@ -4247,6 +4338,8 @@ GEN8_3DSTATE_SAMPLE_PATTERN_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 31,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_SBE_length 0x00000004
+
 struct GEN8_3DSTATE_SBE {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4273,7 +4366,7 @@ struct GEN8_3DSTATE_SBE {
 
 static inline void
 GEN8_3DSTATE_SBE_pack(__gen_user_data *data, void * restrict dst,
-                     const struct GEN8_3DSTATE_SBE * restrict values)
+                      const struct GEN8_3DSTATE_SBE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4310,7 +4403,6 @@ GEN8_3DSTATE_SBE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_SBE_SWIZ_length 0x0000000b
 #define GEN8_3DSTATE_SBE_SWIZ_length_bias 0x00000002
 #define GEN8_3DSTATE_SBE_SWIZ_header            \
    .CommandType          =  3,                  \
@@ -4319,6 +4411,10 @@ GEN8_3DSTATE_SBE_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 81,                  \
    .DwordLength          =  9
 
+#define GEN8_3DSTATE_SBE_SWIZ_length 0x0000000b
+
+#define GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_length 0x00000001
+
 struct GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL {
    bool                                         ComponentOverrideW;
    bool                                         ComponentOverrideZ;
@@ -4340,7 +4436,7 @@ struct GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL {
 
 static inline void
 GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_pack(__gen_user_data *data, void * restrict dst,
-                                    const struct GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL * restrict values)
+                                     const struct GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4363,28 +4459,13 @@ struct GEN8_3DSTATE_SBE_SWIZ {
    uint32_t                                     _3DCommandOpcode;
    uint32_t                                     _3DCommandSubOpcode;
    uint32_t                                     DwordLength;
-   struct GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL       Attribute;
-   uint32_t                                     Attribute15WrapShortestEnables;
-   uint32_t                                     Attribute14WrapShortestEnables;
-   uint32_t                                     Attribute13WrapShortestEnables;
-   uint32_t                                     Attribute12WrapShortestEnables;
-   uint32_t                                     Attribute11WrapShortestEnables;
-   uint32_t                                     Attribute10WrapShortestEnables;
-   uint32_t                                     Attribute09WrapShortestEnables;
-   uint32_t                                     Attribute08WrapShortestEnables;
-   uint32_t                                     Attribute07WrapShortestEnables;
-   uint32_t                                     Attribute06WrapShortestEnables;
-   uint32_t                                     Attribute05WrapShortestEnables;
-   uint32_t                                     Attribute04WrapShortestEnables;
-   uint32_t                                     Attribute03WrapShortestEnables;
-   uint32_t                                     Attribute02WrapShortestEnables;
-   uint32_t                                     Attribute01WrapShortestEnables;
-   uint32_t                                     Attribute00WrapShortestEnables;
+   struct GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL       Attribute[16];
+   uint32_t                                     AttributeWrapShortestEnables[16];
 };
 
 static inline void
 GEN8_3DSTATE_SBE_SWIZ_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_3DSTATE_SBE_SWIZ * restrict values)
+                           const struct GEN8_3DSTATE_SBE_SWIZ * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4396,37 +4477,32 @@ GEN8_3DSTATE_SBE_SWIZ_pack(__gen_user_data *data, void * restrict dst,
       __gen_field(values->DwordLength, 0, 7) |
       0;
 
-   uint32_t dw_Attribute;
-   GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_pack(data, &dw_Attribute, &values->Attribute);
-   dw[1] =
-      __gen_field(dw_Attribute, 0, 15) |
-      0;
-
-   uint64_t qw9 =
-      __gen_field(values->Attribute15WrapShortestEnables, 60, 63) |
-      __gen_field(values->Attribute14WrapShortestEnables, 56, 59) |
-      __gen_field(values->Attribute13WrapShortestEnables, 52, 55) |
-      __gen_field(values->Attribute12WrapShortestEnables, 48, 51) |
-      __gen_field(values->Attribute11WrapShortestEnables, 44, 47) |
-      __gen_field(values->Attribute10WrapShortestEnables, 40, 43) |
-      __gen_field(values->Attribute09WrapShortestEnables, 36, 39) |
-      __gen_field(values->Attribute08WrapShortestEnables, 32, 35) |
-      __gen_field(values->Attribute07WrapShortestEnables, 28, 31) |
-      __gen_field(values->Attribute06WrapShortestEnables, 24, 27) |
-      __gen_field(values->Attribute05WrapShortestEnables, 20, 23) |
-      __gen_field(values->Attribute04WrapShortestEnables, 16, 19) |
-      __gen_field(values->Attribute03WrapShortestEnables, 12, 15) |
-      __gen_field(values->Attribute02WrapShortestEnables, 8, 11) |
-      __gen_field(values->Attribute01WrapShortestEnables, 4, 7) |
-      __gen_field(values->Attribute00WrapShortestEnables, 0, 3) |
-      0;
-
-   dw[9] = qw9;
-   dw[10] = qw9 >> 32;
+   for (uint32_t i = 0, j = 1; i < 16; i += 2, j++) {
+      uint32_t dw_Attribute0;
+      GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_pack(data, &dw_Attribute0, &values->Attribute[i + 0]);
+      uint32_t dw_Attribute1;
+      GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_pack(data, &dw_Attribute1, &values->Attribute[i + 1]);
+      dw[j] =
+         __gen_field(dw_Attribute0, 0, 15) |
+         __gen_field(dw_Attribute1, 16, 31) |
+         0;
+   }
+
+   for (uint32_t i = 0, j = 9; i < 16; i += 8, j++) {
+      dw[j] =
+         __gen_field(values->AttributeWrapShortestEnables[i + 0], 0, 3) |
+         __gen_field(values->AttributeWrapShortestEnables[i + 1], 4, 7) |
+         __gen_field(values->AttributeWrapShortestEnables[i + 2], 8, 11) |
+         __gen_field(values->AttributeWrapShortestEnables[i + 3], 12, 15) |
+         __gen_field(values->AttributeWrapShortestEnables[i + 4], 16, 19) |
+         __gen_field(values->AttributeWrapShortestEnables[i + 5], 20, 23) |
+         __gen_field(values->AttributeWrapShortestEnables[i + 6], 24, 27) |
+         __gen_field(values->AttributeWrapShortestEnables[i + 7], 28, 31) |
+         0;
+   }
 
 }
 
-#define GEN8_3DSTATE_SCISSOR_STATE_POINTERS_length 0x00000002
 #define GEN8_3DSTATE_SCISSOR_STATE_POINTERS_length_bias 0x00000002
 #define GEN8_3DSTATE_SCISSOR_STATE_POINTERS_header\
    .CommandType          =  3,                  \
@@ -4435,6 +4511,8 @@ GEN8_3DSTATE_SBE_SWIZ_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 15,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_SCISSOR_STATE_POINTERS_length 0x00000002
+
 struct GEN8_3DSTATE_SCISSOR_STATE_POINTERS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4446,7 +4524,7 @@ struct GEN8_3DSTATE_SCISSOR_STATE_POINTERS {
 
 static inline void
 GEN8_3DSTATE_SCISSOR_STATE_POINTERS_pack(__gen_user_data *data, void * restrict dst,
-                                        const struct GEN8_3DSTATE_SCISSOR_STATE_POINTERS * restrict values)
+                                         const struct GEN8_3DSTATE_SCISSOR_STATE_POINTERS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4464,7 +4542,6 @@ GEN8_3DSTATE_SCISSOR_STATE_POINTERS_pack(__gen_user_data *data, void * restrict
 
 }
 
-#define GEN8_3DSTATE_SF_length 0x00000004
 #define GEN8_3DSTATE_SF_length_bias 0x00000002
 #define GEN8_3DSTATE_SF_header                  \
    .CommandType          =  3,                  \
@@ -4473,6 +4550,8 @@ GEN8_3DSTATE_SCISSOR_STATE_POINTERS_pack(__gen_user_data *data, void * restrict
    ._3DCommandSubOpcode  = 19,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_SF_length 0x00000004
+
 struct GEN8_3DSTATE_SF {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4504,7 +4583,7 @@ struct GEN8_3DSTATE_SF {
 
 static inline void
 GEN8_3DSTATE_SF_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_SF * restrict values)
+                     const struct GEN8_3DSTATE_SF * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4541,7 +4620,6 @@ GEN8_3DSTATE_SF_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_SO_BUFFER_length 0x00000008
 #define GEN8_3DSTATE_SO_BUFFER_length_bias 0x00000002
 #define GEN8_3DSTATE_SO_BUFFER_header           \
    .CommandType          =  3,                  \
@@ -4550,6 +4628,8 @@ GEN8_3DSTATE_SF_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 24,                  \
    .DwordLength          =  6
 
+#define GEN8_3DSTATE_SO_BUFFER_length 0x00000008
+
 struct GEN8_3DSTATE_SO_BUFFER {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4569,7 +4649,7 @@ struct GEN8_3DSTATE_SO_BUFFER {
 
 static inline void
 GEN8_3DSTATE_SO_BUFFER_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_3DSTATE_SO_BUFFER * restrict values)
+                            const struct GEN8_3DSTATE_SO_BUFFER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4626,6 +4706,12 @@ GEN8_3DSTATE_SO_BUFFER_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  1,                  \
    ._3DCommandSubOpcode  = 23
 
+#define GEN8_3DSTATE_SO_DECL_LIST_length 0x00000000
+
+#define GEN8_SO_DECL_ENTRY_length 0x00000002
+
+#define GEN8_SO_DECL_length 0x00000001
+
 struct GEN8_SO_DECL {
    uint32_t                                     OutputBufferSlot;
    uint32_t                                     HoleFlag;
@@ -4635,7 +4721,7 @@ struct GEN8_SO_DECL {
 
 static inline void
 GEN8_SO_DECL_pack(__gen_user_data *data, void * restrict dst,
-                 const struct GEN8_SO_DECL * restrict values)
+                  const struct GEN8_SO_DECL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4657,7 +4743,7 @@ struct GEN8_SO_DECL_ENTRY {
 
 static inline void
 GEN8_SO_DECL_ENTRY_pack(__gen_user_data *data, void * restrict dst,
-                       const struct GEN8_SO_DECL_ENTRY * restrict values)
+                        const struct GEN8_SO_DECL_ENTRY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4700,7 +4786,7 @@ struct GEN8_3DSTATE_SO_DECL_LIST {
 
 static inline void
 GEN8_3DSTATE_SO_DECL_LIST_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_3DSTATE_SO_DECL_LIST * restrict values)
+                               const struct GEN8_3DSTATE_SO_DECL_LIST * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4729,7 +4815,6 @@ GEN8_3DSTATE_SO_DECL_LIST_pack(__gen_user_data *data, void * restrict dst,
    /* variable length fields follow */
 }
 
-#define GEN8_3DSTATE_STENCIL_BUFFER_length 0x00000005
 #define GEN8_3DSTATE_STENCIL_BUFFER_length_bias 0x00000002
 #define GEN8_3DSTATE_STENCIL_BUFFER_header      \
    .CommandType          =  3,                  \
@@ -4738,6 +4823,8 @@ GEN8_3DSTATE_SO_DECL_LIST_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  6,                  \
    .DwordLength          =  3
 
+#define GEN8_3DSTATE_STENCIL_BUFFER_length 0x00000005
+
 struct GEN8_3DSTATE_STENCIL_BUFFER {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4753,7 +4840,7 @@ struct GEN8_3DSTATE_STENCIL_BUFFER {
 
 static inline void
 GEN8_3DSTATE_STENCIL_BUFFER_pack(__gen_user_data *data, void * restrict dst,
-                                const struct GEN8_3DSTATE_STENCIL_BUFFER * restrict values)
+                                 const struct GEN8_3DSTATE_STENCIL_BUFFER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4788,7 +4875,6 @@ GEN8_3DSTATE_STENCIL_BUFFER_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_STREAMOUT_length 0x00000005
 #define GEN8_3DSTATE_STREAMOUT_length_bias 0x00000002
 #define GEN8_3DSTATE_STREAMOUT_header           \
    .CommandType          =  3,                  \
@@ -4797,6 +4883,8 @@ GEN8_3DSTATE_STENCIL_BUFFER_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 30,                  \
    .DwordLength          =  3
 
+#define GEN8_3DSTATE_STREAMOUT_length 0x00000005
+
 struct GEN8_3DSTATE_STREAMOUT {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4831,7 +4919,7 @@ struct GEN8_3DSTATE_STREAMOUT {
 
 static inline void
 GEN8_3DSTATE_STREAMOUT_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_3DSTATE_STREAMOUT * restrict values)
+                            const struct GEN8_3DSTATE_STREAMOUT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4875,7 +4963,6 @@ GEN8_3DSTATE_STREAMOUT_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_TE_length 0x00000004
 #define GEN8_3DSTATE_TE_length_bias 0x00000002
 #define GEN8_3DSTATE_TE_header                  \
    .CommandType          =  3,                  \
@@ -4884,6 +4971,8 @@ GEN8_3DSTATE_STREAMOUT_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 28,                  \
    .DwordLength          =  2
 
+#define GEN8_3DSTATE_TE_length 0x00000004
+
 struct GEN8_3DSTATE_TE {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4913,7 +5002,7 @@ struct GEN8_3DSTATE_TE {
 
 static inline void
 GEN8_3DSTATE_TE_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_TE * restrict values)
+                     const struct GEN8_3DSTATE_TE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4943,7 +5032,6 @@ GEN8_3DSTATE_TE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_URB_DS_length 0x00000002
 #define GEN8_3DSTATE_URB_DS_length_bias 0x00000002
 #define GEN8_3DSTATE_URB_DS_header              \
    .CommandType          =  3,                  \
@@ -4952,6 +5040,8 @@ GEN8_3DSTATE_TE_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 50,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_URB_DS_length 0x00000002
+
 struct GEN8_3DSTATE_URB_DS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -4965,7 +5055,7 @@ struct GEN8_3DSTATE_URB_DS {
 
 static inline void
 GEN8_3DSTATE_URB_DS_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_3DSTATE_URB_DS * restrict values)
+                         const struct GEN8_3DSTATE_URB_DS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -4985,7 +5075,6 @@ GEN8_3DSTATE_URB_DS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_URB_GS_length 0x00000002
 #define GEN8_3DSTATE_URB_GS_length_bias 0x00000002
 #define GEN8_3DSTATE_URB_GS_header              \
    .CommandType          =  3,                  \
@@ -4994,6 +5083,8 @@ GEN8_3DSTATE_URB_DS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 51,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_URB_GS_length 0x00000002
+
 struct GEN8_3DSTATE_URB_GS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5007,7 +5098,7 @@ struct GEN8_3DSTATE_URB_GS {
 
 static inline void
 GEN8_3DSTATE_URB_GS_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_3DSTATE_URB_GS * restrict values)
+                         const struct GEN8_3DSTATE_URB_GS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5027,7 +5118,6 @@ GEN8_3DSTATE_URB_GS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_URB_HS_length 0x00000002
 #define GEN8_3DSTATE_URB_HS_length_bias 0x00000002
 #define GEN8_3DSTATE_URB_HS_header              \
    .CommandType          =  3,                  \
@@ -5036,6 +5126,8 @@ GEN8_3DSTATE_URB_GS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 49,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_URB_HS_length 0x00000002
+
 struct GEN8_3DSTATE_URB_HS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5049,7 +5141,7 @@ struct GEN8_3DSTATE_URB_HS {
 
 static inline void
 GEN8_3DSTATE_URB_HS_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_3DSTATE_URB_HS * restrict values)
+                         const struct GEN8_3DSTATE_URB_HS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5076,6 +5168,10 @@ GEN8_3DSTATE_URB_HS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  =  8
 
+#define GEN8_3DSTATE_VERTEX_BUFFERS_length 0x00000000
+
+#define GEN8_VERTEX_BUFFER_STATE_length 0x00000004
+
 struct GEN8_VERTEX_BUFFER_STATE {
    uint32_t                                     VertexBufferIndex;
    struct GEN8_MEMORY_OBJECT_CONTROL_STATE      MemoryObjectControlState;
@@ -5088,7 +5184,7 @@ struct GEN8_VERTEX_BUFFER_STATE {
 
 static inline void
 GEN8_VERTEX_BUFFER_STATE_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_VERTEX_BUFFER_STATE * restrict values)
+                              const struct GEN8_VERTEX_BUFFER_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5128,7 +5224,7 @@ struct GEN8_3DSTATE_VERTEX_BUFFERS {
 
 static inline void
 GEN8_3DSTATE_VERTEX_BUFFERS_pack(__gen_user_data *data, void * restrict dst,
-                                const struct GEN8_3DSTATE_VERTEX_BUFFERS * restrict values)
+                                 const struct GEN8_3DSTATE_VERTEX_BUFFERS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5150,6 +5246,10 @@ GEN8_3DSTATE_VERTEX_BUFFERS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  =  9
 
+#define GEN8_3DSTATE_VERTEX_ELEMENTS_length 0x00000000
+
+#define GEN8_VERTEX_ELEMENT_STATE_length 0x00000002
+
 struct GEN8_VERTEX_ELEMENT_STATE {
    uint32_t                                     VertexBufferIndex;
    bool                                         Valid;
@@ -5164,7 +5264,7 @@ struct GEN8_VERTEX_ELEMENT_STATE {
 
 static inline void
 GEN8_VERTEX_ELEMENT_STATE_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_VERTEX_ELEMENT_STATE * restrict values)
+                               const struct GEN8_VERTEX_ELEMENT_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5196,7 +5296,7 @@ struct GEN8_3DSTATE_VERTEX_ELEMENTS {
 
 static inline void
 GEN8_3DSTATE_VERTEX_ELEMENTS_pack(__gen_user_data *data, void * restrict dst,
-                                 const struct GEN8_3DSTATE_VERTEX_ELEMENTS * restrict values)
+                                  const struct GEN8_3DSTATE_VERTEX_ELEMENTS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5211,7 +5311,6 @@ GEN8_3DSTATE_VERTEX_ELEMENTS_pack(__gen_user_data *data, void * restrict dst,
    /* variable length fields follow */
 }
 
-#define GEN8_3DSTATE_VF_length 0x00000002
 #define GEN8_3DSTATE_VF_length_bias 0x00000002
 #define GEN8_3DSTATE_VF_header                  \
    .CommandType          =  3,                  \
@@ -5220,6 +5319,8 @@ GEN8_3DSTATE_VERTEX_ELEMENTS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 12,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_VF_length 0x00000002
+
 struct GEN8_3DSTATE_VF {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5232,7 +5333,7 @@ struct GEN8_3DSTATE_VF {
 
 static inline void
 GEN8_3DSTATE_VF_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_VF * restrict values)
+                     const struct GEN8_3DSTATE_VF * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5251,7 +5352,6 @@ GEN8_3DSTATE_VF_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_VF_INSTANCING_length 0x00000003
 #define GEN8_3DSTATE_VF_INSTANCING_length_bias 0x00000002
 #define GEN8_3DSTATE_VF_INSTANCING_header       \
    .CommandType          =  3,                  \
@@ -5260,6 +5360,8 @@ GEN8_3DSTATE_VF_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 73,                  \
    .DwordLength          =  1
 
+#define GEN8_3DSTATE_VF_INSTANCING_length 0x00000003
+
 struct GEN8_3DSTATE_VF_INSTANCING {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5273,7 +5375,7 @@ struct GEN8_3DSTATE_VF_INSTANCING {
 
 static inline void
 GEN8_3DSTATE_VF_INSTANCING_pack(__gen_user_data *data, void * restrict dst,
-                               const struct GEN8_3DSTATE_VF_INSTANCING * restrict values)
+                                const struct GEN8_3DSTATE_VF_INSTANCING * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5296,7 +5398,6 @@ GEN8_3DSTATE_VF_INSTANCING_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_VF_SGVS_length 0x00000002
 #define GEN8_3DSTATE_VF_SGVS_length_bias 0x00000002
 #define GEN8_3DSTATE_VF_SGVS_header             \
    .CommandType          =  3,                  \
@@ -5305,6 +5406,8 @@ GEN8_3DSTATE_VF_INSTANCING_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 74,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_VF_SGVS_length 0x00000002
+
 struct GEN8_3DSTATE_VF_SGVS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5329,7 +5432,7 @@ struct GEN8_3DSTATE_VF_SGVS {
 
 static inline void
 GEN8_3DSTATE_VF_SGVS_pack(__gen_user_data *data, void * restrict dst,
-                         const struct GEN8_3DSTATE_VF_SGVS * restrict values)
+                          const struct GEN8_3DSTATE_VF_SGVS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5352,7 +5455,6 @@ GEN8_3DSTATE_VF_SGVS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_VF_STATISTICS_length 0x00000001
 #define GEN8_3DSTATE_VF_STATISTICS_length_bias 0x00000001
 #define GEN8_3DSTATE_VF_STATISTICS_header       \
    .CommandType          =  3,                  \
@@ -5360,6 +5462,8 @@ GEN8_3DSTATE_VF_SGVS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandOpcode     =  0,                  \
    ._3DCommandSubOpcode  = 11
 
+#define GEN8_3DSTATE_VF_STATISTICS_length 0x00000001
+
 struct GEN8_3DSTATE_VF_STATISTICS {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5370,7 +5474,7 @@ struct GEN8_3DSTATE_VF_STATISTICS {
 
 static inline void
 GEN8_3DSTATE_VF_STATISTICS_pack(__gen_user_data *data, void * restrict dst,
-                               const struct GEN8_3DSTATE_VF_STATISTICS * restrict values)
+                                const struct GEN8_3DSTATE_VF_STATISTICS * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5384,7 +5488,6 @@ GEN8_3DSTATE_VF_STATISTICS_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_VF_TOPOLOGY_length 0x00000002
 #define GEN8_3DSTATE_VF_TOPOLOGY_length_bias 0x00000002
 #define GEN8_3DSTATE_VF_TOPOLOGY_header         \
    .CommandType          =  3,                  \
@@ -5393,6 +5496,8 @@ GEN8_3DSTATE_VF_STATISTICS_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 75,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_VF_TOPOLOGY_length 0x00000002
+
 struct GEN8_3DSTATE_VF_TOPOLOGY {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5404,7 +5509,7 @@ struct GEN8_3DSTATE_VF_TOPOLOGY {
 
 static inline void
 GEN8_3DSTATE_VF_TOPOLOGY_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_3DSTATE_VF_TOPOLOGY * restrict values)
+                              const struct GEN8_3DSTATE_VF_TOPOLOGY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5422,7 +5527,6 @@ GEN8_3DSTATE_VF_TOPOLOGY_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC_length 0x00000002
 #define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC_length_bias 0x00000002
 #define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC_header\
    .CommandType          =  3,                  \
@@ -5431,6 +5535,8 @@ GEN8_3DSTATE_VF_TOPOLOGY_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 35,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC_length 0x00000002
+
 struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5442,7 +5548,7 @@ struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC {
 
 static inline void
 GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC_pack(__gen_user_data *data, void * restrict dst,
-                                            const struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC * restrict values)
+                                             const struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5460,7 +5566,6 @@ GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC_pack(__gen_user_data *data, void * restr
 
 }
 
-#define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP_length 0x00000002
 #define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP_length_bias 0x00000002
 #define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP_header\
    .CommandType          =  3,                  \
@@ -5469,6 +5574,8 @@ GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_CC_pack(__gen_user_data *data, void * restr
    ._3DCommandSubOpcode  = 33,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP_length 0x00000002
+
 struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5480,7 +5587,7 @@ struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP {
 
 static inline void
 GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP_pack(__gen_user_data *data, void * restrict dst,
-                                                 const struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP * restrict values)
+                                                  const struct GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5498,7 +5605,6 @@ GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP_pack(__gen_user_data *data, void *
 
 }
 
-#define GEN8_3DSTATE_WM_length 0x00000002
 #define GEN8_3DSTATE_WM_length_bias 0x00000002
 #define GEN8_3DSTATE_WM_header                  \
    .CommandType          =  3,                  \
@@ -5507,6 +5613,8 @@ GEN8_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CLIP_pack(__gen_user_data *data, void *
    ._3DCommandSubOpcode  = 20,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_WM_length 0x00000002
+
 struct GEN8_3DSTATE_WM {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5554,7 +5662,7 @@ struct GEN8_3DSTATE_WM {
 
 static inline void
 GEN8_3DSTATE_WM_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_3DSTATE_WM * restrict values)
+                     const struct GEN8_3DSTATE_WM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5586,7 +5694,6 @@ GEN8_3DSTATE_WM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_WM_CHROMAKEY_length 0x00000002
 #define GEN8_3DSTATE_WM_CHROMAKEY_length_bias 0x00000002
 #define GEN8_3DSTATE_WM_CHROMAKEY_header        \
    .CommandType          =  3,                  \
@@ -5595,6 +5702,8 @@ GEN8_3DSTATE_WM_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 76,                  \
    .DwordLength          =  0
 
+#define GEN8_3DSTATE_WM_CHROMAKEY_length 0x00000002
+
 struct GEN8_3DSTATE_WM_CHROMAKEY {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5606,7 +5715,7 @@ struct GEN8_3DSTATE_WM_CHROMAKEY {
 
 static inline void
 GEN8_3DSTATE_WM_CHROMAKEY_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_3DSTATE_WM_CHROMAKEY * restrict values)
+                               const struct GEN8_3DSTATE_WM_CHROMAKEY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5624,7 +5733,6 @@ GEN8_3DSTATE_WM_CHROMAKEY_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_WM_DEPTH_STENCIL_length 0x00000003
 #define GEN8_3DSTATE_WM_DEPTH_STENCIL_length_bias 0x00000002
 #define GEN8_3DSTATE_WM_DEPTH_STENCIL_header    \
    .CommandType          =  3,                  \
@@ -5633,6 +5741,8 @@ GEN8_3DSTATE_WM_CHROMAKEY_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 78,                  \
    .DwordLength          =  1
 
+#define GEN8_3DSTATE_WM_DEPTH_STENCIL_length 0x00000003
+
 struct GEN8_3DSTATE_WM_DEPTH_STENCIL {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5661,7 +5771,7 @@ struct GEN8_3DSTATE_WM_DEPTH_STENCIL {
 
 static inline void
 GEN8_3DSTATE_WM_DEPTH_STENCIL_pack(__gen_user_data *data, void * restrict dst,
-                                  const struct GEN8_3DSTATE_WM_DEPTH_STENCIL * restrict values)
+                                   const struct GEN8_3DSTATE_WM_DEPTH_STENCIL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5699,7 +5809,6 @@ GEN8_3DSTATE_WM_DEPTH_STENCIL_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_WM_HZ_OP_length 0x00000005
 #define GEN8_3DSTATE_WM_HZ_OP_length_bias 0x00000002
 #define GEN8_3DSTATE_WM_HZ_OP_header            \
    .CommandType          =  3,                  \
@@ -5708,6 +5817,8 @@ GEN8_3DSTATE_WM_DEPTH_STENCIL_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  = 82,                  \
    .DwordLength          =  3
 
+#define GEN8_3DSTATE_WM_HZ_OP_length 0x00000005
+
 struct GEN8_3DSTATE_WM_HZ_OP {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -5732,7 +5843,7 @@ struct GEN8_3DSTATE_WM_HZ_OP {
 
 static inline void
 GEN8_3DSTATE_WM_HZ_OP_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_3DSTATE_WM_HZ_OP * restrict values)
+                           const struct GEN8_3DSTATE_WM_HZ_OP * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5772,7 +5883,6 @@ GEN8_3DSTATE_WM_HZ_OP_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_GPGPU_WALKER_length 0x0000000f
 #define GEN8_GPGPU_WALKER_length_bias 0x00000002
 #define GEN8_GPGPU_WALKER_header                \
    .CommandType          =  3,                  \
@@ -5781,6 +5891,8 @@ GEN8_3DSTATE_WM_HZ_OP_pack(__gen_user_data *data, void * restrict dst,
    .SubOpcode            =  5,                  \
    .DwordLength          = 13
 
+#define GEN8_GPGPU_WALKER_length 0x0000000f
+
 struct GEN8_GPGPU_WALKER {
    uint32_t                                     CommandType;
    uint32_t                                     Pipeline;
@@ -5811,7 +5923,7 @@ struct GEN8_GPGPU_WALKER {
 
 static inline void
 GEN8_GPGPU_WALKER_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_GPGPU_WALKER * restrict values)
+                       const struct GEN8_GPGPU_WALKER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5884,7 +5996,6 @@ GEN8_GPGPU_WALKER_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MEDIA_CURBE_LOAD_length 0x00000004
 #define GEN8_MEDIA_CURBE_LOAD_length_bias 0x00000002
 #define GEN8_MEDIA_CURBE_LOAD_header            \
    .CommandType          =  3,                  \
@@ -5893,6 +6004,8 @@ GEN8_GPGPU_WALKER_pack(__gen_user_data *data, void * restrict dst,
    .SubOpcode            =  1,                  \
    .DwordLength          =  2
 
+#define GEN8_MEDIA_CURBE_LOAD_length 0x00000004
+
 struct GEN8_MEDIA_CURBE_LOAD {
    uint32_t                                     CommandType;
    uint32_t                                     Pipeline;
@@ -5905,7 +6018,7 @@ struct GEN8_MEDIA_CURBE_LOAD {
 
 static inline void
 GEN8_MEDIA_CURBE_LOAD_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_MEDIA_CURBE_LOAD * restrict values)
+                           const struct GEN8_MEDIA_CURBE_LOAD * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5930,7 +6043,6 @@ GEN8_MEDIA_CURBE_LOAD_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD_length 0x00000004
 #define GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD_length_bias 0x00000002
 #define GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD_header\
    .CommandType          =  3,                  \
@@ -5939,6 +6051,8 @@ GEN8_MEDIA_CURBE_LOAD_pack(__gen_user_data *data, void * restrict dst,
    .SubOpcode            =  2,                  \
    .DwordLength          =  2
 
+#define GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD_length 0x00000004
+
 struct GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD {
    uint32_t                                     CommandType;
    uint32_t                                     Pipeline;
@@ -5951,7 +6065,7 @@ struct GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD {
 
 static inline void
 GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD_pack(__gen_user_data *data, void * restrict dst,
-                                         const struct GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD * restrict values)
+                                          const struct GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -5983,6 +6097,8 @@ GEN8_MEDIA_INTERFACE_DESCRIPTOR_LOAD_pack(__gen_user_data *data, void * restrict
    .MediaCommandOpcode   =  1,                  \
    .MediaCommandSubOpcode =  0
 
+#define GEN8_MEDIA_OBJECT_length 0x00000000
+
 struct GEN8_MEDIA_OBJECT {
    uint32_t                                     CommandType;
    uint32_t                                     MediaCommandPipeline;
@@ -6017,7 +6133,7 @@ struct GEN8_MEDIA_OBJECT {
 
 static inline void
 GEN8_MEDIA_OBJECT_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_MEDIA_OBJECT * restrict values)
+                       const struct GEN8_MEDIA_OBJECT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6069,6 +6185,8 @@ GEN8_MEDIA_OBJECT_pack(__gen_user_data *data, void * restrict dst,
    .MediaCommandOpcode   =  1,                  \
    .MediaCommandSubOpcode =  6
 
+#define GEN8_MEDIA_OBJECT_GRPID_length 0x00000000
+
 struct GEN8_MEDIA_OBJECT_GRPID {
    uint32_t                                     CommandType;
    uint32_t                                     MediaCommandPipeline;
@@ -6091,7 +6209,7 @@ struct GEN8_MEDIA_OBJECT_GRPID {
    uint32_t                                     SubSliceDestinationSelect;
    uint32_t                                     IndirectDataLength;
    __gen_address_type                           IndirectDataStartAddress;
-   uint32_t                                     ScoredboardY;
+   uint32_t                                     ScoreboardY;
    uint32_t                                     ScoreboardX;
    uint32_t                                     ScoreboardColor;
    bool                                         ScoreboardMask;
@@ -6101,7 +6219,7 @@ struct GEN8_MEDIA_OBJECT_GRPID {
 
 static inline void
 GEN8_MEDIA_OBJECT_GRPID_pack(__gen_user_data *data, void * restrict dst,
-                            const struct GEN8_MEDIA_OBJECT_GRPID * restrict values)
+                             const struct GEN8_MEDIA_OBJECT_GRPID * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6133,7 +6251,7 @@ GEN8_MEDIA_OBJECT_GRPID_pack(__gen_user_data *data, void * restrict dst,
       __gen_combine_address(data, &dw[3], values->IndirectDataStartAddress, dw3);
 
    dw[4] =
-      __gen_field(values->ScoredboardY, 16, 24) |
+      __gen_field(values->ScoreboardY, 16, 24) |
       __gen_field(values->ScoreboardX, 0, 8) |
       0;
 
@@ -6149,7 +6267,6 @@ GEN8_MEDIA_OBJECT_GRPID_pack(__gen_user_data *data, void * restrict dst,
    /* variable length fields follow */
 }
 
-#define GEN8_MEDIA_OBJECT_PRT_length 0x00000010
 #define GEN8_MEDIA_OBJECT_PRT_length_bias 0x00000002
 #define GEN8_MEDIA_OBJECT_PRT_header            \
    .CommandType          =  3,                  \
@@ -6158,6 +6275,8 @@ GEN8_MEDIA_OBJECT_GRPID_pack(__gen_user_data *data, void * restrict dst,
    .SubOpcode            =  2,                  \
    .DwordLength          = 14
 
+#define GEN8_MEDIA_OBJECT_PRT_length 0x00000010
+
 struct GEN8_MEDIA_OBJECT_PRT {
    uint32_t                                     CommandType;
    uint32_t                                     Pipeline;
@@ -6170,12 +6289,12 @@ struct GEN8_MEDIA_OBJECT_PRT {
 #define     Rootthreadqueue                                    0
 #define     VFEstateflush                                      1
    uint32_t                                     PRT_FenceType;
-   uint32_t                                     InlineData;
+   uint32_t                                     InlineData[12];
 };
 
 static inline void
 GEN8_MEDIA_OBJECT_PRT_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_MEDIA_OBJECT_PRT * restrict values)
+                           const struct GEN8_MEDIA_OBJECT_PRT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6200,9 +6319,11 @@ GEN8_MEDIA_OBJECT_PRT_pack(__gen_user_data *data, void * restrict dst,
    dw[3] =
       0;
 
-   dw[4] =
-      __gen_field(values->InlineData, 0, 31) |
-      0;
+   for (uint32_t i = 0, j = 4; i < 12; i += 1, j++) {
+      dw[j] =
+         __gen_field(values->InlineData[i + 0], 0, 31) |
+         0;
+   }
 
 }
 
@@ -6213,6 +6334,8 @@ GEN8_MEDIA_OBJECT_PRT_pack(__gen_user_data *data, void * restrict dst,
    .MediaCommandOpcode   =  1,                  \
    .SubOpcode            =  3
 
+#define GEN8_MEDIA_OBJECT_WALKER_length 0x00000000
+
 struct GEN8_MEDIA_OBJECT_WALKER {
    uint32_t                                     CommandType;
    uint32_t                                     Pipeline;
@@ -6258,7 +6381,7 @@ struct GEN8_MEDIA_OBJECT_WALKER {
 
 static inline void
 GEN8_MEDIA_OBJECT_WALKER_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_MEDIA_OBJECT_WALKER * restrict values)
+                              const struct GEN8_MEDIA_OBJECT_WALKER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6351,7 +6474,6 @@ GEN8_MEDIA_OBJECT_WALKER_pack(__gen_user_data *data, void * restrict dst,
    /* variable length fields follow */
 }
 
-#define GEN8_MEDIA_STATE_FLUSH_length 0x00000002
 #define GEN8_MEDIA_STATE_FLUSH_length_bias 0x00000002
 #define GEN8_MEDIA_STATE_FLUSH_header           \
    .CommandType          =  3,                  \
@@ -6360,6 +6482,8 @@ GEN8_MEDIA_OBJECT_WALKER_pack(__gen_user_data *data, void * restrict dst,
    .SubOpcode            =  4,                  \
    .DwordLength          =  0
 
+#define GEN8_MEDIA_STATE_FLUSH_length 0x00000002
+
 struct GEN8_MEDIA_STATE_FLUSH {
    uint32_t                                     CommandType;
    uint32_t                                     Pipeline;
@@ -6373,7 +6497,7 @@ struct GEN8_MEDIA_STATE_FLUSH {
 
 static inline void
 GEN8_MEDIA_STATE_FLUSH_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_MEDIA_STATE_FLUSH * restrict values)
+                            const struct GEN8_MEDIA_STATE_FLUSH * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6393,7 +6517,6 @@ GEN8_MEDIA_STATE_FLUSH_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MEDIA_VFE_STATE_length 0x00000009
 #define GEN8_MEDIA_VFE_STATE_length_bias 0x00000002
 #define GEN8_MEDIA_VFE_STATE_header             \
    .CommandType          =  3,                  \
@@ -6402,6 +6525,8 @@ GEN8_MEDIA_STATE_FLUSH_pack(__gen_user_data *data, void * restrict dst,
    .SubOpcode            =  0,                  \
    .DwordLength          =  7
 
+#define GEN8_MEDIA_VFE_STATE_length 0x00000009
+
 struct GEN8_MEDIA_VFE_STATE {
    uint32_t                                     CommandType;
    uint32_t                                     Pipeline;
@@ -6450,7 +6575,7 @@ struct GEN8_MEDIA_VFE_STATE {
 
 static inline void
 GEN8_MEDIA_VFE_STATE_pack(__gen_user_data *data, void * restrict dst,
-                         const struct GEN8_MEDIA_VFE_STATE * restrict values)
+                          const struct GEN8_MEDIA_VFE_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6518,12 +6643,13 @@ GEN8_MEDIA_VFE_STATE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_ARB_CHECK_length 0x00000001
 #define GEN8_MI_ARB_CHECK_length_bias 0x00000001
 #define GEN8_MI_ARB_CHECK_header                \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  5
 
+#define GEN8_MI_ARB_CHECK_length 0x00000001
+
 struct GEN8_MI_ARB_CHECK {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6531,7 +6657,7 @@ struct GEN8_MI_ARB_CHECK {
 
 static inline void
 GEN8_MI_ARB_CHECK_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_MI_ARB_CHECK * restrict values)
+                       const struct GEN8_MI_ARB_CHECK * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6542,12 +6668,13 @@ GEN8_MI_ARB_CHECK_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_BATCH_BUFFER_END_length 0x00000001
 #define GEN8_MI_BATCH_BUFFER_END_length_bias 0x00000001
 #define GEN8_MI_BATCH_BUFFER_END_header         \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 10
 
+#define GEN8_MI_BATCH_BUFFER_END_length 0x00000001
+
 struct GEN8_MI_BATCH_BUFFER_END {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6555,7 +6682,7 @@ struct GEN8_MI_BATCH_BUFFER_END {
 
 static inline void
 GEN8_MI_BATCH_BUFFER_END_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_MI_BATCH_BUFFER_END * restrict values)
+                              const struct GEN8_MI_BATCH_BUFFER_END * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6566,13 +6693,14 @@ GEN8_MI_BATCH_BUFFER_END_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_BATCH_BUFFER_START_length 0x00000003
 #define GEN8_MI_BATCH_BUFFER_START_length_bias 0x00000002
 #define GEN8_MI_BATCH_BUFFER_START_header       \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 49,                  \
    .DwordLength          =  1
 
+#define GEN8_MI_BATCH_BUFFER_START_length 0x00000003
+
 struct GEN8_MI_BATCH_BUFFER_START {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6587,12 +6715,11 @@ struct GEN8_MI_BATCH_BUFFER_START {
    uint32_t                                     AddressSpaceIndicator;
    uint32_t                                     DwordLength;
    __gen_address_type                           BatchBufferStartAddress;
-   __gen_address_type                           BatchBufferStartAddressHigh;
 };
 
 static inline void
 GEN8_MI_BATCH_BUFFER_START_pack(__gen_user_data *data, void * restrict dst,
-                               const struct GEN8_MI_BATCH_BUFFER_START * restrict values)
+                                const struct GEN8_MI_BATCH_BUFFER_START * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6610,14 +6737,11 @@ GEN8_MI_BATCH_BUFFER_START_pack(__gen_user_data *data, void * restrict dst,
    uint32_t dw1 =
       0;
 
-   dw[1] =
+   uint64_t qw1 =
       __gen_combine_address(data, &dw[1], values->BatchBufferStartAddress, dw1);
 
-   uint32_t dw2 =
-      0;
-
-   dw[2] =
-      __gen_combine_address(data, &dw[2], values->BatchBufferStartAddressHigh, dw2);
+   dw[1] = qw1;
+   dw[2] = qw1 >> 32;
 
 }
 
@@ -6626,6 +6750,8 @@ GEN8_MI_BATCH_BUFFER_START_pack(__gen_user_data *data, void * restrict dst,
    .CommandType          =  0,                  \
    .MICommandOpcode      = 39
 
+#define GEN8_MI_CLFLUSH_length 0x00000000
+
 struct GEN8_MI_CLFLUSH {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6635,13 +6761,12 @@ struct GEN8_MI_CLFLUSH {
    uint32_t                                     DwordLength;
    __gen_address_type                           PageBaseAddress;
    uint32_t                                     StartingCachelineOffset;
-   __gen_address_type                           PageBaseAddressHigh;
    /* variable length fields follow */
 };
 
 static inline void
 GEN8_MI_CLFLUSH_pack(__gen_user_data *data, void * restrict dst,
-                    const struct GEN8_MI_CLFLUSH * restrict values)
+                     const struct GEN8_MI_CLFLUSH * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6656,19 +6781,15 @@ GEN8_MI_CLFLUSH_pack(__gen_user_data *data, void * restrict dst,
       __gen_field(values->StartingCachelineOffset, 6, 11) |
       0;
 
-   dw[1] =
+   uint64_t qw1 =
       __gen_combine_address(data, &dw[1], values->PageBaseAddress, dw1);
 
-   uint32_t dw2 =
-      0;
-
-   dw[2] =
-      __gen_combine_address(data, &dw[2], values->PageBaseAddressHigh, dw2);
+   dw[1] = qw1;
+   dw[2] = qw1 >> 32;
 
    /* variable length fields follow */
 }
 
-#define GEN8_MI_CONDITIONAL_BATCH_BUFFER_END_length 0x00000003
 #define GEN8_MI_CONDITIONAL_BATCH_BUFFER_END_length_bias 0x00000002
 #define GEN8_MI_CONDITIONAL_BATCH_BUFFER_END_header\
    .CommandType          =  0,                  \
@@ -6677,6 +6798,8 @@ GEN8_MI_CLFLUSH_pack(__gen_user_data *data, void * restrict dst,
    .CompareSemaphore     =  0,                  \
    .DwordLength          =  1
 
+#define GEN8_MI_CONDITIONAL_BATCH_BUFFER_END_length 0x00000003
+
 struct GEN8_MI_CONDITIONAL_BATCH_BUFFER_END {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6685,12 +6808,11 @@ struct GEN8_MI_CONDITIONAL_BATCH_BUFFER_END {
    uint32_t                                     DwordLength;
    uint32_t                                     CompareDataDword;
    __gen_address_type                           CompareAddress;
-   __gen_address_type                           CompareAddressHigh;
 };
 
 static inline void
 GEN8_MI_CONDITIONAL_BATCH_BUFFER_END_pack(__gen_user_data *data, void * restrict dst,
-                                         const struct GEN8_MI_CONDITIONAL_BATCH_BUFFER_END * restrict values)
+                                          const struct GEN8_MI_CONDITIONAL_BATCH_BUFFER_END * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6709,24 +6831,22 @@ GEN8_MI_CONDITIONAL_BATCH_BUFFER_END_pack(__gen_user_data *data, void * restrict
    uint32_t dw2 =
       0;
 
-   dw[2] =
+   uint64_t qw2 =
       __gen_combine_address(data, &dw[2], values->CompareAddress, dw2);
 
-   uint32_t dw3 =
-      0;
-
-   dw[3] =
-      __gen_combine_address(data, &dw[3], values->CompareAddressHigh, dw3);
+   dw[2] = qw2;
+   dw[3] = qw2 >> 32;
 
 }
 
-#define GEN8_MI_COPY_MEM_MEM_length 0x00000005
 #define GEN8_MI_COPY_MEM_MEM_length_bias 0x00000002
 #define GEN8_MI_COPY_MEM_MEM_header             \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 46,                  \
    .DwordLength          =  3
 
+#define GEN8_MI_COPY_MEM_MEM_length 0x00000005
+
 struct GEN8_MI_COPY_MEM_MEM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6743,7 +6863,7 @@ struct GEN8_MI_COPY_MEM_MEM {
 
 static inline void
 GEN8_MI_COPY_MEM_MEM_pack(__gen_user_data *data, void * restrict dst,
-                         const struct GEN8_MI_COPY_MEM_MEM * restrict values)
+                          const struct GEN8_MI_COPY_MEM_MEM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6775,13 +6895,14 @@ GEN8_MI_COPY_MEM_MEM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_LOAD_REGISTER_IMM_length 0x00000003
 #define GEN8_MI_LOAD_REGISTER_IMM_length_bias 0x00000002
 #define GEN8_MI_LOAD_REGISTER_IMM_header        \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 34,                  \
    .DwordLength          =  1
 
+#define GEN8_MI_LOAD_REGISTER_IMM_length 0x00000003
+
 struct GEN8_MI_LOAD_REGISTER_IMM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6793,7 +6914,7 @@ struct GEN8_MI_LOAD_REGISTER_IMM {
 
 static inline void
 GEN8_MI_LOAD_REGISTER_IMM_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_MI_LOAD_REGISTER_IMM * restrict values)
+                               const struct GEN8_MI_LOAD_REGISTER_IMM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6814,13 +6935,14 @@ GEN8_MI_LOAD_REGISTER_IMM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_LOAD_REGISTER_MEM_length 0x00000004
 #define GEN8_MI_LOAD_REGISTER_MEM_length_bias 0x00000002
 #define GEN8_MI_LOAD_REGISTER_MEM_header        \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 41,                  \
    .DwordLength          =  2
 
+#define GEN8_MI_LOAD_REGISTER_MEM_length 0x00000004
+
 struct GEN8_MI_LOAD_REGISTER_MEM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6833,7 +6955,7 @@ struct GEN8_MI_LOAD_REGISTER_MEM {
 
 static inline void
 GEN8_MI_LOAD_REGISTER_MEM_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_MI_LOAD_REGISTER_MEM * restrict values)
+                               const struct GEN8_MI_LOAD_REGISTER_MEM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6860,13 +6982,14 @@ GEN8_MI_LOAD_REGISTER_MEM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_LOAD_SCAN_LINES_EXCL_length 0x00000002
 #define GEN8_MI_LOAD_SCAN_LINES_EXCL_length_bias 0x00000002
 #define GEN8_MI_LOAD_SCAN_LINES_EXCL_header     \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 19,                  \
    .DwordLength          =  0
 
+#define GEN8_MI_LOAD_SCAN_LINES_EXCL_length 0x00000002
+
 struct GEN8_MI_LOAD_SCAN_LINES_EXCL {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6881,7 +7004,7 @@ struct GEN8_MI_LOAD_SCAN_LINES_EXCL {
 
 static inline void
 GEN8_MI_LOAD_SCAN_LINES_EXCL_pack(__gen_user_data *data, void * restrict dst,
-                                 const struct GEN8_MI_LOAD_SCAN_LINES_EXCL * restrict values)
+                                  const struct GEN8_MI_LOAD_SCAN_LINES_EXCL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6899,13 +7022,14 @@ GEN8_MI_LOAD_SCAN_LINES_EXCL_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_LOAD_SCAN_LINES_INCL_length 0x00000002
 #define GEN8_MI_LOAD_SCAN_LINES_INCL_length_bias 0x00000002
 #define GEN8_MI_LOAD_SCAN_LINES_INCL_header     \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 18,                  \
    .DwordLength          =  0
 
+#define GEN8_MI_LOAD_SCAN_LINES_INCL_length 0x00000002
+
 struct GEN8_MI_LOAD_SCAN_LINES_INCL {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6924,7 +7048,7 @@ struct GEN8_MI_LOAD_SCAN_LINES_INCL {
 
 static inline void
 GEN8_MI_LOAD_SCAN_LINES_INCL_pack(__gen_user_data *data, void * restrict dst,
-                                 const struct GEN8_MI_LOAD_SCAN_LINES_INCL * restrict values)
+                                  const struct GEN8_MI_LOAD_SCAN_LINES_INCL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6943,13 +7067,14 @@ GEN8_MI_LOAD_SCAN_LINES_INCL_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_LOAD_URB_MEM_length 0x00000004
 #define GEN8_MI_LOAD_URB_MEM_length_bias 0x00000002
 #define GEN8_MI_LOAD_URB_MEM_header             \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 44,                  \
    .DwordLength          =  2
 
+#define GEN8_MI_LOAD_URB_MEM_length 0x00000004
+
 struct GEN8_MI_LOAD_URB_MEM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -6960,7 +7085,7 @@ struct GEN8_MI_LOAD_URB_MEM {
 
 static inline void
 GEN8_MI_LOAD_URB_MEM_pack(__gen_user_data *data, void * restrict dst,
-                         const struct GEN8_MI_LOAD_URB_MEM * restrict values)
+                          const struct GEN8_MI_LOAD_URB_MEM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -6990,6 +7115,8 @@ GEN8_MI_LOAD_URB_MEM_pack(__gen_user_data *data, void * restrict dst,
    .CommandType          =  0,                  \
    .MICommandOpcode      = 26
 
+#define GEN8_MI_MATH_length 0x00000000
+
 struct GEN8_MI_MATH {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7001,7 +7128,7 @@ struct GEN8_MI_MATH {
 
 static inline void
 GEN8_MI_MATH_pack(__gen_user_data *data, void * restrict dst,
-                 const struct GEN8_MI_MATH * restrict values)
+                  const struct GEN8_MI_MATH * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7022,12 +7149,13 @@ GEN8_MI_MATH_pack(__gen_user_data *data, void * restrict dst,
    /* variable length fields follow */
 }
 
-#define GEN8_MI_NOOP_length 0x00000001
 #define GEN8_MI_NOOP_length_bias 0x00000001
 #define GEN8_MI_NOOP_header                     \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  0
 
+#define GEN8_MI_NOOP_length 0x00000001
+
 struct GEN8_MI_NOOP {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7037,7 +7165,7 @@ struct GEN8_MI_NOOP {
 
 static inline void
 GEN8_MI_NOOP_pack(__gen_user_data *data, void * restrict dst,
-                 const struct GEN8_MI_NOOP * restrict values)
+                  const struct GEN8_MI_NOOP * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7050,12 +7178,13 @@ GEN8_MI_NOOP_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_PREDICATE_length 0x00000001
 #define GEN8_MI_PREDICATE_length_bias 0x00000001
 #define GEN8_MI_PREDICATE_header                \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 12
 
+#define GEN8_MI_PREDICATE_length 0x00000001
+
 struct GEN8_MI_PREDICATE {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7075,7 +7204,7 @@ struct GEN8_MI_PREDICATE {
 
 static inline void
 GEN8_MI_PREDICATE_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_MI_PREDICATE * restrict values)
+                       const struct GEN8_MI_PREDICATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7089,12 +7218,13 @@ GEN8_MI_PREDICATE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_REPORT_HEAD_length 0x00000001
 #define GEN8_MI_REPORT_HEAD_length_bias 0x00000001
 #define GEN8_MI_REPORT_HEAD_header              \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  7
 
+#define GEN8_MI_REPORT_HEAD_length 0x00000001
+
 struct GEN8_MI_REPORT_HEAD {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7102,7 +7232,7 @@ struct GEN8_MI_REPORT_HEAD {
 
 static inline void
 GEN8_MI_REPORT_HEAD_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_MI_REPORT_HEAD * restrict values)
+                         const struct GEN8_MI_REPORT_HEAD * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7113,12 +7243,13 @@ GEN8_MI_REPORT_HEAD_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_RS_CONTEXT_length 0x00000001
 #define GEN8_MI_RS_CONTEXT_length_bias 0x00000001
 #define GEN8_MI_RS_CONTEXT_header               \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 15
 
+#define GEN8_MI_RS_CONTEXT_length 0x00000001
+
 struct GEN8_MI_RS_CONTEXT {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7129,7 +7260,7 @@ struct GEN8_MI_RS_CONTEXT {
 
 static inline void
 GEN8_MI_RS_CONTEXT_pack(__gen_user_data *data, void * restrict dst,
-                       const struct GEN8_MI_RS_CONTEXT * restrict values)
+                        const struct GEN8_MI_RS_CONTEXT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7141,12 +7272,13 @@ GEN8_MI_RS_CONTEXT_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_RS_CONTROL_length 0x00000001
 #define GEN8_MI_RS_CONTROL_length_bias 0x00000001
 #define GEN8_MI_RS_CONTROL_header               \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  6
 
+#define GEN8_MI_RS_CONTROL_length 0x00000001
+
 struct GEN8_MI_RS_CONTROL {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7157,7 +7289,7 @@ struct GEN8_MI_RS_CONTROL {
 
 static inline void
 GEN8_MI_RS_CONTROL_pack(__gen_user_data *data, void * restrict dst,
-                       const struct GEN8_MI_RS_CONTROL * restrict values)
+                        const struct GEN8_MI_RS_CONTROL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7169,13 +7301,14 @@ GEN8_MI_RS_CONTROL_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_RS_STORE_DATA_IMM_length 0x00000004
 #define GEN8_MI_RS_STORE_DATA_IMM_length_bias 0x00000002
 #define GEN8_MI_RS_STORE_DATA_IMM_header        \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 43,                  \
    .DwordLength          =  2
 
+#define GEN8_MI_RS_STORE_DATA_IMM_length 0x00000004
+
 struct GEN8_MI_RS_STORE_DATA_IMM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7187,7 +7320,7 @@ struct GEN8_MI_RS_STORE_DATA_IMM {
 
 static inline void
 GEN8_MI_RS_STORE_DATA_IMM_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_MI_RS_STORE_DATA_IMM * restrict values)
+                               const struct GEN8_MI_RS_STORE_DATA_IMM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7213,13 +7346,14 @@ GEN8_MI_RS_STORE_DATA_IMM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_SET_CONTEXT_length 0x00000002
 #define GEN8_MI_SET_CONTEXT_length_bias 0x00000002
 #define GEN8_MI_SET_CONTEXT_header              \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 24,                  \
    .DwordLength          =  0
 
+#define GEN8_MI_SET_CONTEXT_length 0x00000002
+
 struct GEN8_MI_SET_CONTEXT {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7235,7 +7369,7 @@ struct GEN8_MI_SET_CONTEXT {
 
 static inline void
 GEN8_MI_SET_CONTEXT_pack(__gen_user_data *data, void * restrict dst,
-                        const struct GEN8_MI_SET_CONTEXT * restrict values)
+                         const struct GEN8_MI_SET_CONTEXT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7259,12 +7393,13 @@ GEN8_MI_SET_CONTEXT_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_SET_PREDICATE_length 0x00000001
 #define GEN8_MI_SET_PREDICATE_length_bias 0x00000001
 #define GEN8_MI_SET_PREDICATE_header            \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  1
 
+#define GEN8_MI_SET_PREDICATE_length 0x00000001
+
 struct GEN8_MI_SET_PREDICATE {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7282,7 +7417,7 @@ struct GEN8_MI_SET_PREDICATE {
 
 static inline void
 GEN8_MI_SET_PREDICATE_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_MI_SET_PREDICATE * restrict values)
+                           const struct GEN8_MI_SET_PREDICATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7294,13 +7429,14 @@ GEN8_MI_SET_PREDICATE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_STORE_DATA_IMM_length 0x00000004
 #define GEN8_MI_STORE_DATA_IMM_length_bias 0x00000002
 #define GEN8_MI_STORE_DATA_IMM_header           \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 32,                  \
    .DwordLength          =  2
 
+#define GEN8_MI_STORE_DATA_IMM_length 0x00000004
+
 struct GEN8_MI_STORE_DATA_IMM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7315,7 +7451,7 @@ struct GEN8_MI_STORE_DATA_IMM {
 
 static inline void
 GEN8_MI_STORE_DATA_IMM_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_MI_STORE_DATA_IMM * restrict values)
+                            const struct GEN8_MI_STORE_DATA_IMM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7347,13 +7483,14 @@ GEN8_MI_STORE_DATA_IMM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_STORE_DATA_INDEX_length 0x00000003
 #define GEN8_MI_STORE_DATA_INDEX_length_bias 0x00000002
 #define GEN8_MI_STORE_DATA_INDEX_header         \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 33,                  \
    .DwordLength          =  1
 
+#define GEN8_MI_STORE_DATA_INDEX_length 0x00000003
+
 struct GEN8_MI_STORE_DATA_INDEX {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7366,7 +7503,7 @@ struct GEN8_MI_STORE_DATA_INDEX {
 
 static inline void
 GEN8_MI_STORE_DATA_INDEX_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_MI_STORE_DATA_INDEX * restrict values)
+                              const struct GEN8_MI_STORE_DATA_INDEX * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7391,13 +7528,14 @@ GEN8_MI_STORE_DATA_INDEX_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_STORE_URB_MEM_length 0x00000004
 #define GEN8_MI_STORE_URB_MEM_length_bias 0x00000002
 #define GEN8_MI_STORE_URB_MEM_header            \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 45,                  \
    .DwordLength          =  2
 
+#define GEN8_MI_STORE_URB_MEM_length 0x00000004
+
 struct GEN8_MI_STORE_URB_MEM {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7408,7 +7546,7 @@ struct GEN8_MI_STORE_URB_MEM {
 
 static inline void
 GEN8_MI_STORE_URB_MEM_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_MI_STORE_URB_MEM * restrict values)
+                           const struct GEN8_MI_STORE_URB_MEM * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7433,12 +7571,13 @@ GEN8_MI_STORE_URB_MEM_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_SUSPEND_FLUSH_length 0x00000001
 #define GEN8_MI_SUSPEND_FLUSH_length_bias 0x00000001
 #define GEN8_MI_SUSPEND_FLUSH_header            \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 11
 
+#define GEN8_MI_SUSPEND_FLUSH_length 0x00000001
+
 struct GEN8_MI_SUSPEND_FLUSH {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7447,7 +7586,7 @@ struct GEN8_MI_SUSPEND_FLUSH {
 
 static inline void
 GEN8_MI_SUSPEND_FLUSH_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_MI_SUSPEND_FLUSH * restrict values)
+                           const struct GEN8_MI_SUSPEND_FLUSH * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7459,12 +7598,13 @@ GEN8_MI_SUSPEND_FLUSH_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_TOPOLOGY_FILTER_length 0x00000001
 #define GEN8_MI_TOPOLOGY_FILTER_length_bias 0x00000001
 #define GEN8_MI_TOPOLOGY_FILTER_header          \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 13
 
+#define GEN8_MI_TOPOLOGY_FILTER_length 0x00000001
+
 struct GEN8_MI_TOPOLOGY_FILTER {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7473,7 +7613,7 @@ struct GEN8_MI_TOPOLOGY_FILTER {
 
 static inline void
 GEN8_MI_TOPOLOGY_FILTER_pack(__gen_user_data *data, void * restrict dst,
-                            const struct GEN8_MI_TOPOLOGY_FILTER * restrict values)
+                             const struct GEN8_MI_TOPOLOGY_FILTER * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7490,6 +7630,8 @@ GEN8_MI_TOPOLOGY_FILTER_pack(__gen_user_data *data, void * restrict dst,
    .CommandType          =  0,                  \
    .MICommandOpcode      = 35
 
+#define GEN8_MI_UPDATE_GTT_length 0x00000000
+
 struct GEN8_MI_UPDATE_GTT {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7500,7 +7642,7 @@ struct GEN8_MI_UPDATE_GTT {
 
 static inline void
 GEN8_MI_UPDATE_GTT_pack(__gen_user_data *data, void * restrict dst,
-                       const struct GEN8_MI_UPDATE_GTT * restrict values)
+                        const struct GEN8_MI_UPDATE_GTT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7519,12 +7661,13 @@ GEN8_MI_UPDATE_GTT_pack(__gen_user_data *data, void * restrict dst,
    /* variable length fields follow */
 }
 
-#define GEN8_MI_URB_ATOMIC_ALLOC_length 0x00000001
 #define GEN8_MI_URB_ATOMIC_ALLOC_length_bias 0x00000001
 #define GEN8_MI_URB_ATOMIC_ALLOC_header         \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  9
 
+#define GEN8_MI_URB_ATOMIC_ALLOC_length 0x00000001
+
 struct GEN8_MI_URB_ATOMIC_ALLOC {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7534,7 +7677,7 @@ struct GEN8_MI_URB_ATOMIC_ALLOC {
 
 static inline void
 GEN8_MI_URB_ATOMIC_ALLOC_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_MI_URB_ATOMIC_ALLOC * restrict values)
+                              const struct GEN8_MI_URB_ATOMIC_ALLOC * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7547,13 +7690,14 @@ GEN8_MI_URB_ATOMIC_ALLOC_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_URB_CLEAR_length 0x00000002
 #define GEN8_MI_URB_CLEAR_length_bias 0x00000002
 #define GEN8_MI_URB_CLEAR_header                \
    .CommandType          =  0,                  \
    .MICommandOpcode      = 25,                  \
    .DwordLength          =  0
 
+#define GEN8_MI_URB_CLEAR_length 0x00000002
+
 struct GEN8_MI_URB_CLEAR {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7564,7 +7708,7 @@ struct GEN8_MI_URB_CLEAR {
 
 static inline void
 GEN8_MI_URB_CLEAR_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_MI_URB_CLEAR * restrict values)
+                       const struct GEN8_MI_URB_CLEAR * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7581,12 +7725,13 @@ GEN8_MI_URB_CLEAR_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_USER_INTERRUPT_length 0x00000001
 #define GEN8_MI_USER_INTERRUPT_length_bias 0x00000001
 #define GEN8_MI_USER_INTERRUPT_header           \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  2
 
+#define GEN8_MI_USER_INTERRUPT_length 0x00000001
+
 struct GEN8_MI_USER_INTERRUPT {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7594,7 +7739,7 @@ struct GEN8_MI_USER_INTERRUPT {
 
 static inline void
 GEN8_MI_USER_INTERRUPT_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_MI_USER_INTERRUPT * restrict values)
+                            const struct GEN8_MI_USER_INTERRUPT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7605,12 +7750,13 @@ GEN8_MI_USER_INTERRUPT_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MI_WAIT_FOR_EVENT_length 0x00000001
 #define GEN8_MI_WAIT_FOR_EVENT_length_bias 0x00000001
 #define GEN8_MI_WAIT_FOR_EVENT_header           \
    .CommandType          =  0,                  \
    .MICommandOpcode      =  3
 
+#define GEN8_MI_WAIT_FOR_EVENT_length 0x00000001
+
 struct GEN8_MI_WAIT_FOR_EVENT {
    uint32_t                                     CommandType;
    uint32_t                                     MICommandOpcode;
@@ -7630,7 +7776,7 @@ struct GEN8_MI_WAIT_FOR_EVENT {
 
 static inline void
 GEN8_MI_WAIT_FOR_EVENT_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_MI_WAIT_FOR_EVENT * restrict values)
+                            const struct GEN8_MI_WAIT_FOR_EVENT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7653,7 +7799,6 @@ GEN8_MI_WAIT_FOR_EVENT_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_PIPE_CONTROL_length 0x00000006
 #define GEN8_PIPE_CONTROL_length_bias 0x00000002
 #define GEN8_PIPE_CONTROL_header                \
    .CommandType          =  3,                  \
@@ -7662,6 +7807,8 @@ GEN8_MI_WAIT_FOR_EVENT_pack(__gen_user_data *data, void * restrict dst,
    ._3DCommandSubOpcode  =  0,                  \
    .DwordLength          =  4
 
+#define GEN8_PIPE_CONTROL_length 0x00000006
+
 struct GEN8_PIPE_CONTROL {
    uint32_t                                     CommandType;
    uint32_t                                     CommandSubType;
@@ -7704,13 +7851,12 @@ struct GEN8_PIPE_CONTROL {
 #define     FlushEnabled                                       1
    bool                                         DepthCacheFlushEnable;
    __gen_address_type                           Address;
-   __gen_address_type                           AddressHigh;
    uint64_t                                     ImmediateData;
 };
 
 static inline void
 GEN8_PIPE_CONTROL_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_PIPE_CONTROL * restrict values)
+                       const struct GEN8_PIPE_CONTROL * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7749,14 +7895,11 @@ GEN8_PIPE_CONTROL_pack(__gen_user_data *data, void * restrict dst,
    uint32_t dw2 =
       0;
 
-   dw[2] =
+   uint64_t qw2 =
       __gen_combine_address(data, &dw[2], values->Address, dw2);
 
-   uint32_t dw3 =
-      0;
-
-   dw[3] =
-      __gen_combine_address(data, &dw[3], values->AddressHigh, dw3);
+   dw[2] = qw2;
+   dw[3] = qw2 >> 32;
 
    uint64_t qw4 =
       __gen_field(values->ImmediateData, 0, 63) |
@@ -7767,22 +7910,6 @@ GEN8_PIPE_CONTROL_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_3DSTATE_CONSTANT_BODY_length 0x0000000a
-
-#define GEN8_BINDING_TABLE_EDIT_ENTRY_length 0x00000001
-
-#define GEN8_GATHER_CONSTANT_ENTRY_length 0x00000001
-
-#define GEN8_VERTEX_BUFFER_STATE_length 0x00000004
-
-#define GEN8_VERTEX_ELEMENT_STATE_length 0x00000002
-
-#define GEN8_SO_DECL_ENTRY_length 0x00000002
-
-#define GEN8_SO_DECL_length 0x00000001
-
-#define GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_length 0x00000001
-
 #define GEN8_SCISSOR_RECT_length 0x00000002
 
 struct GEN8_SCISSOR_RECT {
@@ -7794,7 +7921,7 @@ struct GEN8_SCISSOR_RECT {
 
 static inline void
 GEN8_SCISSOR_RECT_pack(__gen_user_data *data, void * restrict dst,
-                      const struct GEN8_SCISSOR_RECT * restrict values)
+                       const struct GEN8_SCISSOR_RECT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7831,7 +7958,7 @@ struct GEN8_SF_CLIP_VIEWPORT {
 
 static inline void
 GEN8_SF_CLIP_VIEWPORT_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_SF_CLIP_VIEWPORT * restrict values)
+                           const struct GEN8_SF_CLIP_VIEWPORT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7901,6 +8028,8 @@ GEN8_SF_CLIP_VIEWPORT_pack(__gen_user_data *data, void * restrict dst,
 
 #define GEN8_BLEND_STATE_length 0x00000011
 
+#define GEN8_BLEND_STATE_ENTRY_length 0x00000002
+
 struct GEN8_BLEND_STATE_ENTRY {
    bool                                         LogicOpEnable;
    uint32_t                                     LogicOpFunction;
@@ -7926,11 +8055,11 @@ struct GEN8_BLEND_STATE_ENTRY {
 
 static inline void
 GEN8_BLEND_STATE_ENTRY_pack(__gen_user_data *data, void * restrict dst,
-                           const struct GEN8_BLEND_STATE_ENTRY * restrict values)
+                            const struct GEN8_BLEND_STATE_ENTRY * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
-   dw[0] =
+   uint64_t qw0 =
       __gen_field(values->LogicOpEnable, 63, 63) |
       __gen_field(values->LogicOpFunction, 59, 62) |
       __gen_field(values->PreBlendSourceOnlyClampEnable, 36, 36) |
@@ -7950,6 +8079,9 @@ GEN8_BLEND_STATE_ENTRY_pack(__gen_user_data *data, void * restrict dst,
       __gen_field(values->WriteDisableBlue, 0, 0) |
       0;
 
+   dw[0] = qw0;
+   dw[1] = qw0 >> 32;
+
 }
 
 struct GEN8_BLEND_STATE {
@@ -7962,12 +8094,12 @@ struct GEN8_BLEND_STATE {
    bool                                         ColorDitherEnable;
    uint32_t                                     XDitherOffset;
    uint32_t                                     YDitherOffset;
-   struct GEN8_BLEND_STATE_ENTRY                Entry;
+   struct GEN8_BLEND_STATE_ENTRY                Entry[8];
 };
 
 static inline void
 GEN8_BLEND_STATE_pack(__gen_user_data *data, void * restrict dst,
-                     const struct GEN8_BLEND_STATE * restrict values)
+                      const struct GEN8_BLEND_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -7983,11 +8115,10 @@ GEN8_BLEND_STATE_pack(__gen_user_data *data, void * restrict dst,
       __gen_field(values->YDitherOffset, 19, 20) |
       0;
 
-   GEN8_BLEND_STATE_ENTRY_pack(data, &dw[1], &values->Entry);
+   for (uint32_t i = 0, j = 1; i < 8; i++, j += 2)
+      GEN8_BLEND_STATE_ENTRY_pack(data, &dw[j], &values->Entry[i]);
 }
 
-#define GEN8_BLEND_STATE_ENTRY_length 0x00000001
-
 #define GEN8_CC_VIEWPORT_length 0x00000002
 
 struct GEN8_CC_VIEWPORT {
@@ -7997,7 +8128,7 @@ struct GEN8_CC_VIEWPORT {
 
 static inline void
 GEN8_CC_VIEWPORT_pack(__gen_user_data *data, void * restrict dst,
-                     const struct GEN8_CC_VIEWPORT * restrict values)
+                      const struct GEN8_CC_VIEWPORT * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -8032,7 +8163,7 @@ struct GEN8_COLOR_CALC_STATE {
 
 static inline void
 GEN8_COLOR_CALC_STATE_pack(__gen_user_data *data, void * restrict dst,
-                          const struct GEN8_COLOR_CALC_STATE * restrict values)
+                           const struct GEN8_COLOR_CALC_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -8066,40 +8197,27 @@ GEN8_COLOR_CALC_STATE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_MEMORY_OBJECT_CONTROL_STATE_length 0x00000001
-
-#define GEN8_VEB_DI_IECP_COMMAND_SURFACE_CONTROL_BITS_length 0x00000001
+#define GEN8_BLACK_LEVEL_CORRECTION_STATE__DW7576_length 0x00000002
 
-struct GEN8_VEB_DI_IECP_COMMAND_SURFACE_CONTROL_BITS {
-#define     UseCacheabilityControlsfrompagetableUCwithFenceifcoherentcycle       0
-#define     UncacheableUCnoncacheable                          1
-#define     WritethroughWT                                     2
-#define     WritebackWB                                        3
-   uint32_t                                     MemoryTypeLLCeLLCCacheabilityControlLeLLCCC;
-#define     eLLCOnly                                           0
-#define     LLCOnly                                            1
-#define     LLCeLLCAllowed                                     2
-#define     L3LLCeLLCAllowed                                   3
-   uint32_t                                     TargetCacheTC;
-   bool                                         EncryptedData;
-#define     PoorChance                                         3
-#define     NormalChance                                       2
-#define     BetterChance                                       1
-#define     BestChance                                         0
-   bool                                         AgeforQUADLRUAGE;
+struct GEN8_BLACK_LEVEL_CORRECTION_STATE__DW7576 {
+   uint32_t                                     BlackPointOffsetR;
+   uint32_t                                     BlackPointOffsetG;
+   uint32_t                                     BlackPointOffsetB;
 };
 
 static inline void
-GEN8_VEB_DI_IECP_COMMAND_SURFACE_CONTROL_BITS_pack(__gen_user_data *data, void * restrict dst,
-                                                  const struct GEN8_VEB_DI_IECP_COMMAND_SURFACE_CONTROL_BITS * restrict values)
+GEN8_BLACK_LEVEL_CORRECTION_STATE__DW7576_pack(__gen_user_data *data, void * restrict dst,
+                                               const struct GEN8_BLACK_LEVEL_CORRECTION_STATE__DW7576 * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
    dw[0] =
-      __gen_field(values->MemoryTypeLLCeLLCCacheabilityControlLeLLCCC, 5, 6) |
-      __gen_field(values->TargetCacheTC, 3, 4) |
-      __gen_field(values->EncryptedData, 2, 2) |
-      __gen_field(values->AgeforQUADLRUAGE, 0, 1) |
+      __gen_field(values->BlackPointOffsetR, 0, 12) |
+      0;
+
+   dw[1] =
+      __gen_field(values->BlackPointOffsetG, 13, 25) |
+      __gen_field(values->BlackPointOffsetB, 0, 12) |
       0;
 
 }
@@ -8154,7 +8272,7 @@ struct GEN8_INTERFACE_DESCRIPTOR_DATA {
 
 static inline void
 GEN8_INTERFACE_DESCRIPTOR_DATA_pack(__gen_user_data *data, void * restrict dst,
-                                   const struct GEN8_INTERFACE_DESCRIPTOR_DATA * restrict values)
+                                    const struct GEN8_INTERFACE_DESCRIPTOR_DATA * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -8204,8 +8322,6 @@ GEN8_INTERFACE_DESCRIPTOR_DATA_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
-#define GEN8_PALETTE_ENTRY_length 0x00000001
-
 #define GEN8_BINDING_TABLE_STATE_length 0x00000001
 
 struct GEN8_BINDING_TABLE_STATE {
@@ -8214,7 +8330,7 @@ struct GEN8_BINDING_TABLE_STATE {
 
 static inline void
 GEN8_BINDING_TABLE_STATE_pack(__gen_user_data *data, void * restrict dst,
-                             const struct GEN8_BINDING_TABLE_STATE * restrict values)
+                              const struct GEN8_BINDING_TABLE_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -8324,7 +8440,7 @@ struct GEN8_RENDER_SURFACE_STATE {
 
 static inline void
 GEN8_RENDER_SURFACE_STATE_pack(__gen_user_data *data, void * restrict dst,
-                              const struct GEN8_RENDER_SURFACE_STATE * restrict values)
+                               const struct GEN8_RENDER_SURFACE_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -8440,6 +8556,24 @@ GEN8_RENDER_SURFACE_STATE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
+#define GEN8_FILTER_COEFFICIENT_length 0x00000001
+
+struct GEN8_FILTER_COEFFICIENT {
+   uint32_t                                     FilterCoefficient;
+};
+
+static inline void
+GEN8_FILTER_COEFFICIENT_pack(__gen_user_data *data, void * restrict dst,
+                             const struct GEN8_FILTER_COEFFICIENT * restrict values)
+{
+   uint32_t *dw = (uint32_t * restrict) dst;
+
+   dw[0] =
+      __gen_field(values->FilterCoefficient, 0, 7) |
+      0;
+
+}
+
 #define GEN8_SAMPLER_STATE_length 0x00000004
 
 struct GEN8_SAMPLER_STATE {
@@ -8520,7 +8654,7 @@ struct GEN8_SAMPLER_STATE {
 
 static inline void
 GEN8_SAMPLER_STATE_pack(__gen_user_data *data, void * restrict dst,
-                       const struct GEN8_SAMPLER_STATE * restrict values)
+                        const struct GEN8_SAMPLER_STATE * restrict values)
 {
    uint32_t *dw = (uint32_t * restrict) dst;
 
@@ -8568,6 +8702,91 @@ GEN8_SAMPLER_STATE_pack(__gen_user_data *data, void * restrict dst,
 
 }
 
+#define GEN8_SAMPLER_STATE_8X8_AVS_COEFFICIENTS_length 0x00000008
+
+struct GEN8_SAMPLER_STATE_8X8_AVS_COEFFICIENTS {
+   uint32_t                                     Table0YFilterCoefficientn1;
+   uint32_t                                     Table0XFilterCoefficientn1;
+   uint32_t                                     Table0YFilterCoefficientn0;
+   uint32_t                                     Table0XFilterCoefficientn0;
+   uint32_t                                     Table0YFilterCoefficientn3;
+   uint32_t                                     Table0XFilterCoefficientn3;
+   uint32_t                                     Table0YFilterCoefficientn2;
+   uint32_t                                     Table0XFilterCoefficientn2;
+   uint32_t                                     Table0YFilterCoefficientn5;
+   uint32_t                                     Table0XFilterCoefficientn5;
+   uint32_t                                     Table0YFilterCoefficientn4;
+   uint32_t                                     Table0XFilterCoefficientn4;
+   uint32_t                                     Table0YFilterCoefficientn7;
+   uint32_t                                     Table0XFilterCoefficientn7;
+   uint32_t                                     Table0YFilterCoefficientn6;
+   uint32_t                                     Table0XFilterCoefficientn6;
+   uint32_t                                     Table1XFilterCoefficientn3;
+   uint32_t                                     Table1XFilterCoefficientn2;
+   uint32_t                                     Table1XFilterCoefficientn5;
+   uint32_t                                     Table1XFilterCoefficientn4;
+   uint32_t                                     Table1YFilterCoefficientn3;
+   uint32_t                                     Table1YFilterCoefficientn2;
+   uint32_t                                     Table1YFilterCoefficientn5;
+   uint32_t                                     Table1YFilterCoefficientn4;
+};
+
+static inline void
+GEN8_SAMPLER_STATE_8X8_AVS_COEFFICIENTS_pack(__gen_user_data *data, void * restrict dst,
+                                             const struct GEN8_SAMPLER_STATE_8X8_AVS_COEFFICIENTS * restrict values)
+{
+   uint32_t *dw = (uint32_t * restrict) dst;
+
+   dw[0] =
+      __gen_field(values->Table0YFilterCoefficientn1, 24, 31) |
+      __gen_field(values->Table0XFilterCoefficientn1, 16, 23) |
+      __gen_field(values->Table0YFilterCoefficientn0, 8, 15) |
+      __gen_field(values->Table0XFilterCoefficientn0, 0, 7) |
+      0;
+
+   dw[1] =
+      __gen_field(values->Table0YFilterCoefficientn3, 24, 31) |
+      __gen_field(values->Table0XFilterCoefficientn3, 16, 23) |
+      __gen_field(values->Table0YFilterCoefficientn2, 8, 15) |
+      __gen_field(values->Table0XFilterCoefficientn2, 0, 7) |
+      0;
+
+   dw[2] =
+      __gen_field(values->Table0YFilterCoefficientn5, 24, 31) |
+      __gen_field(values->Table0XFilterCoefficientn5, 16, 23) |
+      __gen_field(values->Table0YFilterCoefficientn4, 8, 15) |
+      __gen_field(values->Table0XFilterCoefficientn4, 0, 7) |
+      0;
+
+   dw[3] =
+      __gen_field(values->Table0YFilterCoefficientn7, 24, 31) |
+      __gen_field(values->Table0XFilterCoefficientn7, 16, 23) |
+      __gen_field(values->Table0YFilterCoefficientn6, 8, 15) |
+      __gen_field(values->Table0XFilterCoefficientn6, 0, 7) |
+      0;
+
+   dw[4] =
+      __gen_field(values->Table1XFilterCoefficientn3, 24, 31) |
+      __gen_field(values->Table1XFilterCoefficientn2, 16, 23) |
+      0;
+
+   dw[5] =
+      __gen_field(values->Table1XFilterCoefficientn5, 8, 15) |
+      __gen_field(values->Table1XFilterCoefficientn4, 0, 7) |
+      0;
+
+   dw[6] =
+      __gen_field(values->Table1YFilterCoefficientn3, 24, 31) |
+      __gen_field(values->Table1YFilterCoefficientn2, 16, 23) |
+      0;
+
+   dw[7] =
+      __gen_field(values->Table1YFilterCoefficientn5, 8, 15) |
+      __gen_field(values->Table1YFilterCoefficientn4, 0, 7) |
+      0;
+
+}
+
 /* Enum 3D_Prim_Topo_Type */
 #define     _3DPRIM_POINTLIST                                  1
 #define     _3DPRIM_LINELIST                                   2