vk/headers: Make General State offsets relocations
authorKristian Høgsberg Kristensen <kristian.h.kristensen@intel.com>
Thu, 18 Jun 2015 18:12:36 +0000 (11:12 -0700)
committerKristian Høgsberg Kristensen <kristian.h.kristensen@intel.com>
Fri, 19 Jun 2015 22:42:15 +0000 (15:42 -0700)
src/vulkan/gen75_pack.h
src/vulkan/gen7_pack.h
src/vulkan/gen8_pack.h

index 1653cb11ae3ae17c534c1ed61a0c56561e05550a..c4e71686c2a838d84dc665ec6089704f9ad8e483 100644 (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) |
index 75f193891d60204876970f8208ffd0cfa590a704..887803225409466970e9fc09cb6f34cdd3fa2e8d 100644 (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) |
index 3b9e6235975b2ee3a10263ac6a8cc7056bbcf378..04d4e6126f91f44e76a8dda5b43e0adaade2ca33 100644 (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) |