uint32_t dw_StatelessDataPortAccessMemoryObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_StatelessDataPortAccessMemoryObjectControlState, &values->StatelessDataPortAccessMemoryObjectControlState);
uint32_t dw1 =
- /* Struct GeneralStateMemoryObjectControlState (8..11): */
__gen_field(dw_GeneralStateMemoryObjectControlState, 8, 11) |
- /* Struct StatelessDataPortAccessMemoryObjectControlState (4..7): */
__gen_field(dw_StatelessDataPortAccessMemoryObjectControlState, 4, 7) |
__gen_field(values->GeneralStateBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_SurfaceStateMemoryObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SurfaceStateMemoryObjectControlState, &values->SurfaceStateMemoryObjectControlState);
uint32_t dw2 =
- /* Struct SurfaceStateMemoryObjectControlState (8..11): */
__gen_field(dw_SurfaceStateMemoryObjectControlState, 8, 11) |
__gen_field(values->SurfaceStateBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_DynamicStateMemoryObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_DynamicStateMemoryObjectControlState, &values->DynamicStateMemoryObjectControlState);
uint32_t dw3 =
- /* Struct DynamicStateMemoryObjectControlState (8..11): */
__gen_field(dw_DynamicStateMemoryObjectControlState, 8, 11) |
__gen_field(values->DynamicStateBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_IndirectObjectMemoryObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_IndirectObjectMemoryObjectControlState, &values->IndirectObjectMemoryObjectControlState);
uint32_t dw4 =
- /* Struct IndirectObjectMemoryObjectControlState (8..11): */
__gen_field(dw_IndirectObjectMemoryObjectControlState, 8, 11) |
__gen_field(values->IndirectObjectBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_InstructionMemoryObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_InstructionMemoryObjectControlState, &values->InstructionMemoryObjectControlState);
uint32_t dw5 =
- /* Struct InstructionMemoryObjectControlState (8..11): */
__gen_field(dw_InstructionMemoryObjectControlState, 8, 11) |
__gen_field(values->InstructionBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_SWTessellationMemoryObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SWTessellationMemoryObjectControlState, &values->SWTessellationMemoryObjectControlState);
uint32_t dw1 =
- /* Struct SWTessellationMemoryObjectControlState (8..11): */
__gen_field(dw_SWTessellationMemoryObjectControlState, 8, 11) |
0;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SurfaceObjectControlState, &values->SurfaceObjectControlState);
uint32_t dw1 =
__gen_field(values->BindingTablePoolEnable, 11, 11) |
- /* Struct SurfaceObjectControlState (7..10): */
__gen_field(dw_SurfaceObjectControlState, 7, 10) |
0;
uint32_t dw_ConstantBufferObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_ConstantBufferObjectControlState, &values->ConstantBufferObjectControlState);
uint32_t dw2 =
- /* Struct ConstantBufferObjectControlState (0..4): */
__gen_field(dw_ConstantBufferObjectControlState, 0, 4) |
0;
dw[4] =
__gen_field(values->Depth, 21, 31) |
__gen_field(values->MinimumArrayElement, 10, 20) |
- /* Struct DepthBufferObjectControlState (0..3): */
__gen_field(dw_DepthBufferObjectControlState, 0, 3) |
0;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_MemoryObjectControlState, &values->MemoryObjectControlState);
uint32_t dw1 =
__gen_field(values->GatherPoolEnable, 11, 11) |
- /* Struct MemoryObjectControlState (0..3): */
__gen_field(dw_MemoryObjectControlState, 0, 3) |
0;
uint32_t dw_HierarchicalDepthBufferObjectControlState;
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_HierarchicalDepthBufferObjectControlState, &values->HierarchicalDepthBufferObjectControlState);
dw[1] =
- /* Struct HierarchicalDepthBufferObjectControlState (25..28): */
__gen_field(dw_HierarchicalDepthBufferObjectControlState, 25, 28) |
__gen_field(values->SurfacePitch, 0, 16) |
0;
__gen_field(values->CommandSubType, 27, 28) |
__gen_field(values->_3DCommandOpcode, 24, 26) |
__gen_field(values->_3DCommandSubOpcode, 16, 23) |
- /* Struct MemoryObjectControlState (12..15): */
__gen_field(dw_MemoryObjectControlState, 12, 15) |
__gen_field(values->IndexFormat, 8, 9) |
__gen_field(values->DwordLength, 0, 7) |
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SOBufferObjectControlState, &values->SOBufferObjectControlState);
dw[1] =
__gen_field(values->SOBufferIndex, 29, 30) |
- /* Struct SOBufferObjectControlState (25..28): */
__gen_field(dw_SOBufferObjectControlState, 25, 28) |
__gen_field(values->SurfacePitch, 0, 11) |
0;
GEN75_SO_DECL_pack(data, &dw_Stream1Decl, &values->Stream1Decl);
uint32_t dw_Stream0Decl;
GEN75_SO_DECL_pack(data, &dw_Stream0Decl, &values->Stream0Decl);
- dw[0] =
- /* Struct Stream3Decl (48..63): */
+ uint64_t qw0 =
__gen_field(dw_Stream3Decl, 48, 63) |
- /* Struct Stream2Decl (32..47): */
__gen_field(dw_Stream2Decl, 32, 47) |
- /* Struct Stream1Decl (16..31): */
__gen_field(dw_Stream1Decl, 16, 31) |
- /* Struct Stream0Decl (0..15): */
__gen_field(dw_Stream0Decl, 0, 15) |
0;
- GEN75_SO_DECL_pack(data, &dw[0], &values->Stream0Decl);
+ dw[0] = qw0;
+ dw[1] = qw0 >> 32;
+
}
struct GEN75_3DSTATE_SO_DECL_LIST {
GEN75_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_StencilBufferObjectControlState, &values->StencilBufferObjectControlState);
dw[1] =
__gen_field(values->StencilBufferEnable, 31, 31) |
- /* Struct StencilBufferObjectControlState (25..28): */
__gen_field(dw_StencilBufferObjectControlState, 25, 28) |
__gen_field(values->SurfacePitch, 0, 16) |
0;
dw[0] =
__gen_field(values->VertexBufferIndex, 26, 31) |
__gen_field(values->BufferAccessType, 20, 20) |
- /* Struct VertexBufferMemoryObjectControlState (16..19): */
__gen_field(dw_VertexBufferMemoryObjectControlState, 16, 19) |
__gen_field(values->AddressModifyEnable, 14, 14) |
__gen_field(values->NullVertexBuffer, 13, 13) |
dw[5] =
__gen_offset(values->XOffset, 25, 31) |
__gen_offset(values->YOffset, 20, 23) |
- /* Struct SurfaceObjectControlState (16..19): */
__gen_field(dw_SurfaceObjectControlState, 16, 19) |
__gen_field(values->SurfaceMinLOD, 4, 7) |
__gen_field(values->MIPCountLOD, 0, 3) |
uint32_t BorderColorGreen0;
uint32_t BorderColorBlue0;
uint32_t BorderColorAlpha0;
- uint32_t BorderColor;
- uint32_t BorderColor0;
- uint32_t BorderColor1;
+ uint64_t BorderColor;
+ uint64_t BorderColor0;
+ uint64_t BorderColor1;
};
static inline void
uint32_t dw_StatelessDataPortAccessMemoryObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_StatelessDataPortAccessMemoryObjectControlState, &values->StatelessDataPortAccessMemoryObjectControlState);
uint32_t dw1 =
- /* Struct GeneralStateMemoryObjectControlState (8..11): */
__gen_field(dw_GeneralStateMemoryObjectControlState, 8, 11) |
- /* Struct StatelessDataPortAccessMemoryObjectControlState (4..7): */
__gen_field(dw_StatelessDataPortAccessMemoryObjectControlState, 4, 7) |
__gen_field(values->StatelessDataPortAccessForceWriteThru, 3, 3) |
__gen_field(values->GeneralStateBaseAddressModifyEnable, 0, 0) |
uint32_t dw_SurfaceStateMemoryObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SurfaceStateMemoryObjectControlState, &values->SurfaceStateMemoryObjectControlState);
uint32_t dw2 =
- /* Struct SurfaceStateMemoryObjectControlState (8..11): */
__gen_field(dw_SurfaceStateMemoryObjectControlState, 8, 11) |
__gen_field(values->SurfaceStateBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_DynamicStateMemoryObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_DynamicStateMemoryObjectControlState, &values->DynamicStateMemoryObjectControlState);
uint32_t dw3 =
- /* Struct DynamicStateMemoryObjectControlState (8..11): */
__gen_field(dw_DynamicStateMemoryObjectControlState, 8, 11) |
__gen_field(values->DynamicStateBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_IndirectObjectMemoryObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_IndirectObjectMemoryObjectControlState, &values->IndirectObjectMemoryObjectControlState);
uint32_t dw4 =
- /* Struct IndirectObjectMemoryObjectControlState (8..11): */
__gen_field(dw_IndirectObjectMemoryObjectControlState, 8, 11) |
__gen_field(values->IndirectObjectBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_InstructionMemoryObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_InstructionMemoryObjectControlState, &values->InstructionMemoryObjectControlState);
uint32_t dw5 =
- /* Struct InstructionMemoryObjectControlState (8..11): */
__gen_field(dw_InstructionMemoryObjectControlState, 8, 11) |
__gen_field(values->InstructionBaseAddressModifyEnable, 0, 0) |
0;
uint32_t dw_SWTessellationMemoryObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SWTessellationMemoryObjectControlState, &values->SWTessellationMemoryObjectControlState);
uint32_t dw1 =
- /* Struct SWTessellationMemoryObjectControlState (8..11): */
__gen_field(dw_SWTessellationMemoryObjectControlState, 8, 11) |
0;
uint32_t dw_ConstantBufferObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_ConstantBufferObjectControlState, &values->ConstantBufferObjectControlState);
uint32_t dw2 =
- /* Struct ConstantBufferObjectControlState (0..4): */
__gen_field(dw_ConstantBufferObjectControlState, 0, 4) |
0;
dw[4] =
__gen_field(values->Depth, 21, 31) |
__gen_field(values->MinimumArrayElement, 10, 20) |
- /* Struct DepthBufferObjectControlState (0..3): */
__gen_field(dw_DepthBufferObjectControlState, 0, 3) |
0;
uint32_t dw_HierarchicalDepthBufferObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_HierarchicalDepthBufferObjectControlState, &values->HierarchicalDepthBufferObjectControlState);
dw[1] =
- /* Struct HierarchicalDepthBufferObjectControlState (25..28): */
__gen_field(dw_HierarchicalDepthBufferObjectControlState, 25, 28) |
__gen_field(values->SurfacePitch, 0, 16) |
0;
__gen_field(values->CommandSubType, 27, 28) |
__gen_field(values->_3DCommandOpcode, 24, 26) |
__gen_field(values->_3DCommandSubOpcode, 16, 23) |
- /* Struct MemoryObjectControlState (12..15): */
__gen_field(dw_MemoryObjectControlState, 12, 15) |
__gen_field(values->CutIndexEnable, 10, 10) |
__gen_field(values->IndexFormat, 8, 9) |
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SOBufferObjectControlState, &values->SOBufferObjectControlState);
dw[1] =
__gen_field(values->SOBufferIndex, 29, 30) |
- /* Struct SOBufferObjectControlState (25..28): */
__gen_field(dw_SOBufferObjectControlState, 25, 28) |
__gen_field(values->SurfacePitch, 0, 11) |
0;
GEN7_SO_DECL_pack(data, &dw_Stream1Decl, &values->Stream1Decl);
uint32_t dw_Stream0Decl;
GEN7_SO_DECL_pack(data, &dw_Stream0Decl, &values->Stream0Decl);
- dw[0] =
- /* Struct Stream3Decl (48..63): */
+ uint64_t qw0 =
__gen_field(dw_Stream3Decl, 48, 63) |
- /* Struct Stream2Decl (32..47): */
__gen_field(dw_Stream2Decl, 32, 47) |
- /* Struct Stream1Decl (16..31): */
__gen_field(dw_Stream1Decl, 16, 31) |
- /* Struct Stream0Decl (0..15): */
__gen_field(dw_Stream0Decl, 0, 15) |
0;
- GEN7_SO_DECL_pack(data, &dw[0], &values->Stream0Decl);
+ dw[0] = qw0;
+ dw[1] = qw0 >> 32;
+
}
struct GEN7_3DSTATE_SO_DECL_LIST {
uint32_t dw_StencilBufferObjectControlState;
GEN7_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_StencilBufferObjectControlState, &values->StencilBufferObjectControlState);
dw[1] =
- /* Struct StencilBufferObjectControlState (25..28): */
__gen_field(dw_StencilBufferObjectControlState, 25, 28) |
__gen_field(values->SurfacePitch, 0, 16) |
0;
dw[0] =
__gen_field(values->VertexBufferIndex, 26, 31) |
__gen_field(values->BufferAccessType, 20, 20) |
- /* Struct VertexBufferMemoryObjectControlState (16..19): */
__gen_field(dw_VertexBufferMemoryObjectControlState, 16, 19) |
__gen_field(values->AddressModifyEnable, 14, 14) |
__gen_field(values->NullVertexBuffer, 13, 13) |
uint32_t _3DCommandOpcode;
uint32_t _3DCommandSubOpcode;
uint32_t DwordLength;
- uint32_t KernelStartPointer;
+ uint64_t KernelStartPointer;
#define Multiple 0
#define Single 1
uint32_t SingleVertexDispatch;
uint32_t IllegalOpcodeExceptionEnable;
uint32_t AccessesUAV;
uint32_t SoftwareExceptionEnable;
- uint32_t ScratchSpaceBasePointer;
+ uint64_t ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterForURBData;
uint32_t VertexURBEntryReadLength;
__gen_field(values->DwordLength, 0, 7) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_offset(values->KernelStartPointer, 6, 63) |
0;
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->SingleVertexDispatch, 31, 31) |
__gen_field(values->VectorMaskEnable, 30, 30) |
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
- dw[4] =
+ uint64_t qw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
+ dw[4] = qw4;
+ dw[5] = qw4 >> 32;
+
dw[6] =
__gen_field(values->DispatchGRFStartRegisterForURBData, 20, 24) |
__gen_field(values->VertexURBEntryReadLength, 11, 16) |
uint32_t dw1 =
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->GPGPUCSRBaseAddressHigh, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
}
#define GEN8_MI_ATOMIC_length 0x00000003
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->SemaphoreAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
}
#define GEN8_MI_STORE_REGISTER_MEM_length 0x00000004
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->MemoryAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
}
#define GEN8_PIPELINE_SELECT_length 0x00000001
uint32_t dw_GeneralStateMemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_GeneralStateMemoryObjectControlState, &values->GeneralStateMemoryObjectControlState);
uint32_t dw1 =
- /* Struct GeneralStateMemoryObjectControlState (4..10): */
__gen_field(dw_GeneralStateMemoryObjectControlState, 4, 10) |
__gen_field(values->GeneralStateBaseAddressModifyEnable, 0, 0) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->GeneralStateBaseAddress, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
uint32_t dw_StatelessDataPortAccessMemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_StatelessDataPortAccessMemoryObjectControlState, &values->StatelessDataPortAccessMemoryObjectControlState);
dw[3] =
- /* Struct StatelessDataPortAccessMemoryObjectControlState (16..22): */
__gen_field(dw_StatelessDataPortAccessMemoryObjectControlState, 16, 22) |
0;
uint32_t dw_SurfaceStateMemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SurfaceStateMemoryObjectControlState, &values->SurfaceStateMemoryObjectControlState);
uint32_t dw4 =
- /* Struct SurfaceStateMemoryObjectControlState (4..10): */
__gen_field(dw_SurfaceStateMemoryObjectControlState, 4, 10) |
__gen_field(values->SurfaceStateBaseAddressModifyEnable, 0, 0) |
0;
- dw[4] =
+ uint64_t qw4 =
__gen_combine_address(data, &dw[4], values->SurfaceStateBaseAddress, dw4);
+ dw[4] = qw4;
+ dw[5] = qw4 >> 32;
+
uint32_t dw_DynamicStateMemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_DynamicStateMemoryObjectControlState, &values->DynamicStateMemoryObjectControlState);
uint32_t dw6 =
- /* Struct DynamicStateMemoryObjectControlState (4..10): */
__gen_field(dw_DynamicStateMemoryObjectControlState, 4, 10) |
__gen_field(values->DynamicStateBaseAddressModifyEnable, 0, 0) |
0;
- dw[6] =
+ uint64_t qw6 =
__gen_combine_address(data, &dw[6], values->DynamicStateBaseAddress, dw6);
+ dw[6] = qw6;
+ dw[7] = qw6 >> 32;
+
uint32_t dw_IndirectObjectMemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_IndirectObjectMemoryObjectControlState, &values->IndirectObjectMemoryObjectControlState);
uint32_t dw8 =
- /* Struct IndirectObjectMemoryObjectControlState (4..10): */
__gen_field(dw_IndirectObjectMemoryObjectControlState, 4, 10) |
__gen_field(values->IndirectObjectBaseAddressModifyEnable, 0, 0) |
0;
- dw[8] =
+ uint64_t qw8 =
__gen_combine_address(data, &dw[8], values->IndirectObjectBaseAddress, dw8);
+ dw[8] = qw8;
+ dw[9] = qw8 >> 32;
+
uint32_t dw_InstructionMemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_InstructionMemoryObjectControlState, &values->InstructionMemoryObjectControlState);
uint32_t dw10 =
- /* Struct InstructionMemoryObjectControlState (4..10): */
__gen_field(dw_InstructionMemoryObjectControlState, 4, 10) |
__gen_field(values->InstructionBaseAddressModifyEnable, 0, 0) |
0;
- dw[10] =
+ uint64_t qw10 =
__gen_combine_address(data, &dw[10], values->InstructionBaseAddress, dw10);
+ dw[10] = qw10;
+ dw[11] = qw10 >> 32;
+
dw[12] =
__gen_field(values->GeneralStateBufferSize, 12, 31) |
__gen_field(values->GeneralStateBufferSizeModifyEnable, 0, 0) |
uint32_t _3DCommandOpcode;
uint32_t _3DCommandSubOpcode;
uint32_t DwordLength;
- uint32_t SystemInstructionPointer;
+ uint64_t SystemInstructionPointer;
};
static inline void
__gen_field(values->DwordLength, 0, 7) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_offset(values->SystemInstructionPointer, 4, 63) |
0;
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
}
#define GEN8_SWTESS_BASE_ADDRESS_length 0x00000002
uint32_t dw_SWTessellationMemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SWTessellationMemoryObjectControlState, &values->SWTessellationMemoryObjectControlState);
uint32_t dw1 =
- /* Struct SWTessellationMemoryObjectControlState (8..11): */
__gen_field(dw_SWTessellationMemoryObjectControlState, 8, 11) |
0;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_SurfaceObjectControlState, &values->SurfaceObjectControlState);
uint32_t dw1 =
__gen_field(values->BindingTablePoolEnable, 11, 11) |
- /* Struct SurfaceObjectControlState (0..6): */
__gen_field(dw_SurfaceObjectControlState, 0, 6) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->BindingTablePoolBaseAddress, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->BindingTablePoolBufferSize, 12, 31) |
0;
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->PointerToConstantBuffer0, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
uint32_t dw4 =
0;
- dw[4] =
+ uint64_t qw4 =
__gen_combine_address(data, &dw[4], values->PointerToConstantBuffer1, dw4);
+ dw[4] = qw4;
+ dw[5] = qw4 >> 32;
+
uint32_t dw6 =
0;
- dw[6] =
+ uint64_t qw6 =
__gen_combine_address(data, &dw[6], values->PointerToConstantBuffer2, dw6);
+ dw[6] = qw6;
+ dw[7] = qw6 >> 32;
+
uint32_t dw8 =
0;
- dw[8] =
+ uint64_t qw8 =
__gen_combine_address(data, &dw[8], values->PointerToConstantBuffer3, dw8);
+ dw[8] = qw8;
+ dw[9] = qw8 >> 32;
+
}
struct GEN8_3DSTATE_CONSTANT_DS {
__gen_field(values->CommandSubType, 27, 28) |
__gen_field(values->_3DCommandOpcode, 24, 26) |
__gen_field(values->_3DCommandSubOpcode, 16, 23) |
- /* Struct ConstantBufferObjectControlState (8..14): */
__gen_field(dw_ConstantBufferObjectControlState, 8, 14) |
__gen_field(values->DwordLength, 0, 7) |
0;
__gen_field(values->CommandSubType, 27, 28) |
__gen_field(values->_3DCommandOpcode, 24, 26) |
__gen_field(values->_3DCommandSubOpcode, 16, 23) |
- /* Struct ConstantBufferObjectControlState (8..14): */
__gen_field(dw_ConstantBufferObjectControlState, 8, 14) |
__gen_field(values->DwordLength, 0, 7) |
0;
__gen_field(values->CommandSubType, 27, 28) |
__gen_field(values->_3DCommandOpcode, 24, 26) |
__gen_field(values->_3DCommandSubOpcode, 16, 23) |
- /* Struct ConstantBufferObjectControlState (8..14): */
__gen_field(dw_ConstantBufferObjectControlState, 8, 14) |
__gen_field(values->DwordLength, 0, 7) |
0;
__gen_field(values->CommandSubType, 27, 28) |
__gen_field(values->_3DCommandOpcode, 24, 26) |
__gen_field(values->_3DCommandSubOpcode, 16, 23) |
- /* Struct ConstantBufferObjectControlState (8..14): */
__gen_field(dw_ConstantBufferObjectControlState, 8, 14) |
__gen_field(values->DwordLength, 0, 7) |
0;
__gen_field(values->CommandSubType, 27, 28) |
__gen_field(values->_3DCommandOpcode, 24, 26) |
__gen_field(values->_3DCommandSubOpcode, 16, 23) |
- /* Struct ConstantBufferObjectControlState (8..14): */
__gen_field(dw_ConstantBufferObjectControlState, 8, 14) |
__gen_field(values->DwordLength, 0, 7) |
0;
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->SurfaceBaseAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
dw[4] =
__gen_field(values->Height, 18, 31) |
__gen_field(values->Width, 4, 17) |
dw[5] =
__gen_field(values->Depth, 21, 31) |
__gen_field(values->MinimumArrayElement, 10, 20) |
- /* Struct DepthBufferObjectControlState (0..6): */
__gen_field(dw_DepthBufferObjectControlState, 0, 6) |
0;
uint32_t _3DCommandOpcode;
uint32_t _3DCommandSubOpcode;
uint32_t DwordLength;
- uint32_t KernelStartPointer;
+ uint64_t KernelStartPointer;
#define Multiple 0
#define Single 1
uint32_t SingleDomainPointDispatch;
uint32_t AccessesUAV;
uint32_t IllegalOpcodeExceptionEnable;
uint32_t SoftwareExceptionEnable;
- uint32_t ScratchSpaceBasePointer;
+ uint64_t ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterForURBData;
uint32_t PatchURBEntryReadLength;
__gen_field(values->DwordLength, 0, 7) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_offset(values->KernelStartPointer, 6, 63) |
0;
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->SingleDomainPointDispatch, 31, 31) |
__gen_field(values->VectorMaskEnable, 30, 30) |
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
- dw[4] =
+ uint64_t qw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
+ dw[4] = qw4;
+ dw[5] = qw4 >> 32;
+
dw[6] =
__gen_field(values->DispatchGRFStartRegisterForURBData, 20, 24) |
__gen_field(values->PatchURBEntryReadLength, 11, 17) |
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_MemoryObjectControlState, &values->MemoryObjectControlState);
uint32_t dw1 =
__gen_field(values->GatherPoolEnable, 11, 11) |
- /* Struct MemoryObjectControlState (0..6): */
__gen_field(dw_MemoryObjectControlState, 0, 6) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->GatherPoolBaseAddress, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->GatherPoolBufferSize, 12, 31) |
0;
uint32_t _3DCommandOpcode;
uint32_t _3DCommandSubOpcode;
uint32_t DwordLength;
- uint32_t KernelStartPointer;
+ uint64_t KernelStartPointer;
uint32_t SingleProgramFlow;
#define Dmask 0
#define Vmask 1
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ExpectedVertexCount;
- uint32_t ScratchSpaceBasePointer;
+ uint64_t ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t OutputVertexSize;
uint32_t OutputTopology;
__gen_field(values->DwordLength, 0, 7) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_offset(values->KernelStartPointer, 6, 63) |
0;
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->SingleProgramFlow, 31, 31) |
__gen_field(values->VectorMaskEnable, 30, 30) |
__gen_field(values->ExpectedVertexCount, 0, 5) |
0;
- dw[4] =
+ uint64_t qw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
+ dw[4] = qw4;
+ dw[5] = qw4 >> 32;
+
dw[6] =
__gen_field(values->OutputVertexSize, 23, 28) |
__gen_field(values->OutputTopology, 17, 22) |
uint32_t dw_HierarchicalDepthBufferObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_HierarchicalDepthBufferObjectControlState, &values->HierarchicalDepthBufferObjectControlState);
dw[1] =
- /* Struct HierarchicalDepthBufferObjectControlState (25..31): */
__gen_field(dw_HierarchicalDepthBufferObjectControlState, 25, 31) |
__gen_field(values->SurfacePitch, 0, 16) |
0;
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->SurfaceBaseAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
dw[4] =
__gen_field(values->SurfaceQPitch, 0, 14) |
0;
uint32_t StatisticsEnable;
uint32_t MaximumNumberofThreads;
uint32_t InstanceCount;
- uint32_t KernelStartPointer;
- uint32_t ScratchSpaceBasePointer;
+ uint64_t KernelStartPointer;
+ uint64_t ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t SingleProgramFlow;
#define Dmask 0
__gen_field(values->InstanceCount, 0, 3) |
0;
- dw[3] =
+ uint64_t qw3 =
__gen_offset(values->KernelStartPointer, 6, 63) |
0;
- dw[5] =
+ dw[3] = qw3;
+ dw[4] = qw3 >> 32;
+
+ uint64_t qw5 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
+ dw[5] = qw5;
+ dw[6] = qw5 >> 32;
+
dw[7] =
__gen_field(values->SingleProgramFlow, 27, 27) |
__gen_field(values->VectorMaskEnable, 26, 26) |
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_MemoryObjectControlState, &values->MemoryObjectControlState);
dw[1] =
__gen_field(values->IndexFormat, 8, 9) |
- /* Struct MemoryObjectControlState (0..6): */
__gen_field(dw_MemoryObjectControlState, 0, 6) |
0;
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->BufferStartingAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
dw[4] =
__gen_field(values->BufferSize, 0, 31) |
0;
uint32_t _3DCommandOpcode;
uint32_t _3DCommandSubOpcode;
uint32_t DwordLength;
- uint32_t KernelStartPointer0;
+ uint64_t KernelStartPointer0;
#define Multiple 0
#define Single 1
uint32_t SingleProgramFlow;
uint32_t IllegalOpcodeExceptionEnable;
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
- uint32_t ScratchSpaceBasePointer;
+ uint64_t ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t MaximumNumberofThreadsPerPSD;
uint32_t PushConstantEnable;
uint32_t DispatchGRFStartRegisterForConstantSetupData0;
uint32_t DispatchGRFStartRegisterForConstantSetupData1;
uint32_t DispatchGRFStartRegisterForConstantSetupData2;
- uint32_t KernelStartPointer1;
- uint32_t KernelStartPointer2;
+ uint64_t KernelStartPointer1;
+ uint64_t KernelStartPointer2;
};
static inline void
__gen_field(values->DwordLength, 0, 7) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_offset(values->KernelStartPointer0, 6, 63) |
0;
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->SingleProgramFlow, 31, 31) |
__gen_field(values->VectorMaskEnable, 30, 30) |
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
- dw[4] =
+ uint64_t qw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
+ dw[4] = qw4;
+ dw[5] = qw4 >> 32;
+
dw[6] =
__gen_field(values->MaximumNumberofThreadsPerPSD, 23, 31) |
__gen_field(values->PushConstantEnable, 11, 11) |
__gen_field(values->DispatchGRFStartRegisterForConstantSetupData2, 0, 6) |
0;
- dw[8] =
+ uint64_t qw8 =
__gen_offset(values->KernelStartPointer1, 6, 63) |
0;
- dw[10] =
+ dw[8] = qw8;
+ dw[9] = qw8 >> 32;
+
+ uint64_t qw10 =
__gen_offset(values->KernelStartPointer2, 6, 63) |
0;
+ dw[10] = qw10;
+ dw[11] = qw10 >> 32;
+
}
#define GEN8_3DSTATE_PS_BLEND_length 0x00000002
uint32_t dw_Attribute;
GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_pack(data, &dw_Attribute, &values->Attribute);
dw[1] =
- /* Struct Attribute (0..15): */
__gen_field(dw_Attribute, 0, 15) |
0;
- GEN8_SF_OUTPUT_ATTRIBUTE_DETAIL_pack(data, &dw[1], &values->Attribute);
- dw[9] =
+ uint64_t qw9 =
__gen_field(values->Attribute15WrapShortestEnables, 60, 63) |
__gen_field(values->Attribute14WrapShortestEnables, 56, 59) |
__gen_field(values->Attribute13WrapShortestEnables, 52, 55) |
__gen_field(values->Attribute00WrapShortestEnables, 0, 3) |
0;
+ dw[9] = qw9;
+ dw[10] = qw9 >> 32;
+
}
#define GEN8_3DSTATE_SCISSOR_STATE_POINTERS_length 0x00000002
dw[1] =
__gen_field(values->SOBufferEnable, 31, 31) |
__gen_field(values->SOBufferIndex, 29, 30) |
- /* Struct SOBufferObjectControlState (22..28): */
__gen_field(dw_SOBufferObjectControlState, 22, 28) |
__gen_field(values->StreamOffsetWriteEnable, 21, 21) |
__gen_field(values->StreamOutputBufferOffsetAddressEnable, 20, 20) |
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->SurfaceBaseAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
dw[4] =
__gen_field(values->SurfaceSize, 0, 29) |
0;
uint32_t dw5 =
0;
- dw[5] =
+ uint64_t qw5 =
__gen_combine_address(data, &dw[5], values->StreamOutputBufferOffsetAddress, dw5);
+ dw[5] = qw5;
+ dw[6] = qw5 >> 32;
+
dw[7] =
__gen_field(values->StreamOffset, 0, 31) |
0;
GEN8_SO_DECL_pack(data, &dw_Stream1Decl, &values->Stream1Decl);
uint32_t dw_Stream0Decl;
GEN8_SO_DECL_pack(data, &dw_Stream0Decl, &values->Stream0Decl);
- dw[0] =
- /* Struct Stream3Decl (48..63): */
+ uint64_t qw0 =
__gen_field(dw_Stream3Decl, 48, 63) |
- /* Struct Stream2Decl (32..47): */
__gen_field(dw_Stream2Decl, 32, 47) |
- /* Struct Stream1Decl (16..31): */
__gen_field(dw_Stream1Decl, 16, 31) |
- /* Struct Stream0Decl (0..15): */
__gen_field(dw_Stream0Decl, 0, 15) |
0;
- GEN8_SO_DECL_pack(data, &dw[0], &values->Stream0Decl);
+ dw[0] = qw0;
+ dw[1] = qw0 >> 32;
+
}
struct GEN8_3DSTATE_SO_DECL_LIST {
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_StencilBufferObjectControlState, &values->StencilBufferObjectControlState);
dw[1] =
__gen_field(values->StencilBufferEnable, 31, 31) |
- /* Struct StencilBufferObjectControlState (22..28): */
__gen_field(dw_StencilBufferObjectControlState, 22, 28) |
__gen_field(values->SurfacePitch, 0, 16) |
0;
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->SurfaceBaseAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
dw[4] =
__gen_field(values->SurfaceQPitch, 0, 14) |
0;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_MemoryObjectControlState, &values->MemoryObjectControlState);
dw[0] =
__gen_field(values->VertexBufferIndex, 26, 31) |
- /* Struct MemoryObjectControlState (16..22): */
__gen_field(dw_MemoryObjectControlState, 16, 22) |
__gen_field(values->AddressModifyEnable, 14, 14) |
__gen_field(values->NullVertexBuffer, 13, 13) |
uint32_t dw1 =
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->BufferStartingAddress, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->BufferSize, 0, 31) |
0;
uint32_t dw1 =
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->DestinationMemoryAddress, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
uint32_t dw3 =
0;
- dw[3] =
+ uint64_t qw3 =
__gen_combine_address(data, &dw[3], values->SourceMemoryAddress, dw3);
+ dw[3] = qw3;
+ dw[4] = qw3 >> 32;
+
}
#define GEN8_MI_LOAD_REGISTER_IMM_length 0x00000003
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->MemoryAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
}
#define GEN8_MI_LOAD_SCAN_LINES_EXCL_length 0x00000002
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->MemoryAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
}
#define GEN8_MI_MATH_length_bias 0x00000002
__gen_field(values->CoreModeEnable, 0, 0) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->DestinationAddress, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->DataDWord0, 0, 31) |
0;
__gen_field(values->CoreModeEnable, 0, 0) |
0;
- dw[1] =
+ uint64_t qw1 =
__gen_combine_address(data, &dw[1], values->Address, dw1);
+ dw[1] = qw1;
+ dw[2] = qw1 >> 32;
+
dw[3] =
__gen_field(values->DataDWord0, 0, 31) |
0;
uint32_t dw2 =
0;
- dw[2] =
+ uint64_t qw2 =
__gen_combine_address(data, &dw[2], values->MemoryAddress, dw2);
+ dw[2] = qw2;
+ dw[3] = qw2 >> 32;
+
}
#define GEN8_MI_SUSPEND_FLUSH_length 0x00000001
uint32_t DepthCacheFlushEnable;
__gen_address_type Address;
__gen_address_type AddressHigh;
- uint32_t ImmediateData;
+ uint64_t ImmediateData;
};
static inline void
dw[3] =
__gen_combine_address(data, &dw[3], values->AddressHigh, dw3);
- dw[4] =
+ uint64_t qw4 =
__gen_field(values->ImmediateData, 0, 63) |
0;
+ dw[4] = qw4;
+ dw[5] = qw4 >> 32;
+
}
#define GEN8_3DSTATE_CONSTANT_BODY_length 0x0000000a
uint32_t dw_MemoryObjectControlState;
GEN8_MEMORY_OBJECT_CONTROL_STATE_pack(data, &dw_MemoryObjectControlState, &values->MemoryObjectControlState);
dw[1] =
- /* Struct MemoryObjectControlState (24..30): */
__gen_field(dw_MemoryObjectControlState, 24, 30) |
__gen_field(values->BaseMipLevel, 19, 23) |
__gen_field(values->SurfaceQPitch, 0, 14) |
uint32_t dw8 =
0;
- dw[8] =
+ uint64_t qw8 =
__gen_combine_address(data, &dw[8], values->SurfaceBaseAddress, dw8);
+ dw[8] = qw8;
+ dw[9] = qw8 >> 32;
+
uint32_t dw10 =
__gen_field(values->XOffsetforVPlane, 48, 61) |
__gen_field(values->YOffsetforVPlane, 32, 45) |
__gen_field(values->AuxiliaryTableIndexforMediaCompressedSurface, 21, 31) |
0;
- dw[10] =
+ uint64_t qw10 =
__gen_combine_address(data, &dw[10], values->AuxiliarySurfaceBaseAddress, dw10);
+ dw[10] = qw10;
+ dw[11] = qw10 >> 32;
+
dw[12] =
0;