vk/headers: Make General State offsets relocations

This commit is contained in:
Kristian Høgsberg Kristensen 2015-06-18 11:12:36 -07:00
parent aedd3c9579
commit aba75d0546
3 changed files with 95 additions and 38 deletions

View file

@ -1856,7 +1856,7 @@ struct GEN75_3DSTATE_DS {
uint32_t AccessesUAV;
uint32_t IllegalOpcodeExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterForURBData;
uint32_t PatchURBEntryReadLength;
@ -1898,11 +1898,14 @@ GEN75_3DSTATE_DS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBasePointer, dw3);
dw[4] =
__gen_field(values->DispatchGRFStartRegisterForURBData, 20, 24) |
__gen_field(values->PatchURBEntryReadLength, 11, 17) |
@ -2258,7 +2261,7 @@ struct GEN75_3DSTATE_GS {
uint32_t GSaccessesUAV;
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t OutputVertexSize;
uint32_t OutputTopology;
@ -2320,11 +2323,14 @@ GEN75_3DSTATE_GS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBasePointer, dw3);
dw[4] =
__gen_field(values->OutputVertexSize, 23, 28) |
__gen_field(values->OutputTopology, 17, 22) |
@ -2440,7 +2446,7 @@ struct GEN75_3DSTATE_HS {
uint32_t StatisticsEnable;
uint32_t InstanceCount;
uint32_t KernelStartPointer;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t SingleProgramFlow;
#define Dmask 0
@ -2488,11 +2494,14 @@ GEN75_3DSTATE_HS_pack(__gen_user_data *data, void * restrict dst,
__gen_offset(values->KernelStartPointer, 6, 31) |
0;
dw[4] =
uint32_t dw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[4] =
__gen_combine_address(data, &dw[4], values->ScratchSpaceBasePointer, dw4);
dw[5] =
__gen_field(values->SingleProgramFlow, 27, 27) |
__gen_field(values->VectorMaskEnable, 26, 26) |
@ -2860,7 +2869,7 @@ struct GEN75_3DSTATE_PS {
uint32_t IllegalOpcodeExceptionEnable;
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t MaximumNumberofThreads;
uint32_t SampleMask;
@ -2917,11 +2926,14 @@ GEN75_3DSTATE_PS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBasePointer, dw3);
dw[4] =
__gen_field(values->MaximumNumberofThreads, 23, 31) |
__gen_field(values->SampleMask, 12, 19) |
@ -4729,7 +4741,7 @@ struct GEN75_3DSTATE_VS {
uint32_t IllegalOpcodeExceptionEnable;
uint32_t VSaccessesUAV;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBaseOffset;
__gen_address_type ScratchSpaceBaseOffset;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterforURBData;
uint32_t VertexURBEntryReadLength;
@ -4770,11 +4782,14 @@ GEN75_3DSTATE_VS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBaseOffset, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBaseOffset, dw3);
dw[4] =
__gen_field(values->DispatchGRFStartRegisterforURBData, 20, 24) |
__gen_field(values->VertexURBEntryReadLength, 11, 16) |
@ -5517,7 +5532,7 @@ struct GEN75_MEDIA_VFE_STATE {
uint32_t MediaCommandOpcode;
uint32_t SubOpcode;
uint32_t DwordLength;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t StackSize;
uint32_t PerThreadScratchSpace;
uint32_t MaximumNumberofThreads;
@ -5571,12 +5586,15 @@ GEN75_MEDIA_VFE_STATE_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->DwordLength, 0, 15) |
0;
dw[1] =
uint32_t dw1 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->StackSize, 4, 7) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[1] =
__gen_combine_address(data, &dw[1], values->ScratchSpaceBasePointer, dw1);
dw[2] =
__gen_field(values->MaximumNumberofThreads, 16, 31) |
__gen_field(values->NumberofURBEntries, 8, 15) |

View file

@ -1521,7 +1521,7 @@ struct GEN7_3DSTATE_DS {
uint32_t FloatingPointMode;
uint32_t IllegalOpcodeExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterForURBData;
uint32_t PatchURBEntryReadLength;
@ -1561,11 +1561,14 @@ GEN7_3DSTATE_DS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBasePointer, dw3);
dw[4] =
__gen_field(values->DispatchGRFStartRegisterForURBData, 20, 24) |
__gen_field(values->PatchURBEntryReadLength, 11, 17) |
@ -1618,7 +1621,7 @@ struct GEN7_3DSTATE_GS {
uint32_t IllegalOpcodeExceptionEnable;
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t OutputVertexSize;
uint32_t OutputTopology;
@ -1677,11 +1680,14 @@ GEN7_3DSTATE_GS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBasePointer, dw3);
dw[4] =
__gen_field(values->OutputVertexSize, 23, 28) |
__gen_field(values->OutputTopology, 17, 22) |
@ -1794,7 +1800,7 @@ struct GEN7_3DSTATE_HS {
uint32_t StatisticsEnable;
uint32_t InstanceCount;
uint32_t KernelStartPointer;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t SingleProgramFlow;
#define Dmask 0
@ -1840,11 +1846,14 @@ GEN7_3DSTATE_HS_pack(__gen_user_data *data, void * restrict dst,
__gen_offset(values->KernelStartPointer, 6, 31) |
0;
dw[4] =
uint32_t dw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[4] =
__gen_combine_address(data, &dw[4], values->ScratchSpaceBasePointer, dw4);
dw[5] =
__gen_field(values->SingleProgramFlow, 27, 27) |
__gen_field(values->VectorMaskEnable, 26, 26) |
@ -2208,7 +2217,7 @@ struct GEN7_3DSTATE_PS {
uint32_t IllegalOpcodeExceptionEnable;
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t MaximumNumberofThreads;
uint32_t PushConstantEnable;
@ -2262,11 +2271,14 @@ GEN7_3DSTATE_PS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBasePointer, dw3);
dw[4] =
__gen_field(values->MaximumNumberofThreads, 24, 31) |
__gen_field(values->PushConstantEnable, 11, 11) |
@ -3915,7 +3927,7 @@ struct GEN7_3DSTATE_VS {
uint32_t FloatingPointMode;
uint32_t IllegalOpcodeExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ScratchSpaceBaseOffset;
__gen_address_type ScratchSpaceBaseOffset;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterforURBData;
uint32_t VertexURBEntryReadLength;
@ -3954,11 +3966,14 @@ GEN7_3DSTATE_VS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
dw[3] =
uint32_t dw3 =
__gen_offset(values->ScratchSpaceBaseOffset, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[3] =
__gen_combine_address(data, &dw[3], values->ScratchSpaceBaseOffset, dw3);
dw[4] =
__gen_field(values->DispatchGRFStartRegisterforURBData, 20, 24) |
__gen_field(values->VertexURBEntryReadLength, 11, 16) |
@ -4684,7 +4699,7 @@ struct GEN7_MEDIA_VFE_STATE {
uint32_t MediaCommandOpcode;
uint32_t SubOpcode;
uint32_t DwordLength;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t MaximumNumberofThreads;
uint32_t NumberofURBEntries;
@ -4739,11 +4754,14 @@ GEN7_MEDIA_VFE_STATE_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->DwordLength, 0, 15) |
0;
dw[1] =
uint32_t dw1 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[1] =
__gen_combine_address(data, &dw[1], values->ScratchSpaceBasePointer, dw1);
dw[2] =
__gen_field(values->MaximumNumberofThreads, 16, 31) |
__gen_field(values->NumberofURBEntries, 8, 15) |

View file

@ -166,7 +166,7 @@ struct GEN8_3DSTATE_VS {
uint32_t IllegalOpcodeExceptionEnable;
uint32_t AccessesUAV;
uint32_t SoftwareExceptionEnable;
uint64_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterForURBData;
uint32_t VertexURBEntryReadLength;
@ -215,11 +215,14 @@ GEN8_3DSTATE_VS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
uint64_t qw4 =
uint32_t dw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
uint64_t qw4 =
__gen_combine_address(data, &dw[4], values->ScratchSpaceBasePointer, dw4);
dw[4] = qw4;
dw[5] = qw4 >> 32;
@ -2244,7 +2247,7 @@ struct GEN8_3DSTATE_DS {
uint32_t AccessesUAV;
uint32_t IllegalOpcodeExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint64_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t DispatchGRFStartRegisterForURBData;
uint32_t PatchURBEntryReadLength;
@ -2294,11 +2297,14 @@ GEN8_3DSTATE_DS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
uint64_t qw4 =
uint32_t dw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
uint64_t qw4 =
__gen_combine_address(data, &dw[4], values->ScratchSpaceBasePointer, dw4);
dw[4] = qw4;
dw[5] = qw4 >> 32;
@ -2677,7 +2683,7 @@ struct GEN8_3DSTATE_GS {
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint32_t ExpectedVertexCount;
uint64_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t OutputVertexSize;
uint32_t OutputTopology;
@ -2749,11 +2755,14 @@ GEN8_3DSTATE_GS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->ExpectedVertexCount, 0, 5) |
0;
uint64_t qw4 =
uint32_t dw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
uint64_t qw4 =
__gen_combine_address(data, &dw[4], values->ScratchSpaceBasePointer, dw4);
dw[4] = qw4;
dw[5] = qw4 >> 32;
@ -2888,7 +2897,7 @@ struct GEN8_3DSTATE_HS {
uint32_t MaximumNumberofThreads;
uint32_t InstanceCount;
uint64_t KernelStartPointer;
uint64_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t SingleProgramFlow;
#define Dmask 0
@ -2938,11 +2947,14 @@ GEN8_3DSTATE_HS_pack(__gen_user_data *data, void * restrict dst,
dw[3] = qw3;
dw[4] = qw3 >> 32;
uint64_t qw5 =
uint32_t dw5 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
uint64_t qw5 =
__gen_combine_address(data, &dw[5], values->ScratchSpaceBasePointer, dw5);
dw[5] = qw5;
dw[6] = qw5 >> 32;
@ -3280,7 +3292,7 @@ struct GEN8_3DSTATE_PS {
uint32_t IllegalOpcodeExceptionEnable;
uint32_t MaskStackExceptionEnable;
uint32_t SoftwareExceptionEnable;
uint64_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t PerThreadScratchSpace;
uint32_t MaximumNumberofThreadsPerPSD;
uint32_t PushConstantEnable;
@ -3335,11 +3347,14 @@ GEN8_3DSTATE_PS_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->SoftwareExceptionEnable, 7, 7) |
0;
uint64_t qw4 =
uint32_t dw4 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 63) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
uint64_t qw4 =
__gen_combine_address(data, &dw[4], values->ScratchSpaceBasePointer, dw4);
dw[4] = qw4;
dw[5] = qw4 >> 32;
@ -6404,10 +6419,10 @@ struct GEN8_MEDIA_VFE_STATE {
uint32_t MediaCommandOpcode;
uint32_t SubOpcode;
uint32_t DwordLength;
uint32_t ScratchSpaceBasePointer;
__gen_address_type ScratchSpaceBasePointer;
uint32_t StackSize;
uint32_t PerThreadScratchSpace;
uint32_t ScratchSpaceBasePointerHigh;
__gen_address_type ScratchSpaceBasePointerHigh;
uint32_t MaximumNumberofThreads;
uint32_t NumberofURBEntries;
#define Maintainingtheexistingtimestampstate 0
@ -6458,16 +6473,22 @@ GEN8_MEDIA_VFE_STATE_pack(__gen_user_data *data, void * restrict dst,
__gen_field(values->DwordLength, 0, 15) |
0;
dw[1] =
uint32_t dw1 =
__gen_offset(values->ScratchSpaceBasePointer, 10, 31) |
__gen_field(values->StackSize, 4, 7) |
__gen_field(values->PerThreadScratchSpace, 0, 3) |
0;
dw[2] =
dw[1] =
__gen_combine_address(data, &dw[1], values->ScratchSpaceBasePointer, dw1);
uint32_t dw2 =
__gen_offset(values->ScratchSpaceBasePointerHigh, 0, 15) |
0;
dw[2] =
__gen_combine_address(data, &dw[2], values->ScratchSpaceBasePointerHigh, dw2);
dw[3] =
__gen_field(values->MaximumNumberofThreads, 16, 31) |
__gen_field(values->NumberofURBEntries, 8, 15) |