summaryrefslogtreecommitdiffstats
path: root/src/intel/vulkan/gen8_pipeline.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/intel/vulkan/gen8_pipeline.c')
-rw-r--r--src/intel/vulkan/gen8_pipeline.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/intel/vulkan/gen8_pipeline.c b/src/intel/vulkan/gen8_pipeline.c
index 53fca2b46e8..6d70df6921c 100644
--- a/src/intel/vulkan/gen8_pipeline.c
+++ b/src/intel/vulkan/gen8_pipeline.c
@@ -361,8 +361,10 @@ genX(graphics_pipeline_create)(
gs.ExpectedVertexCount = gs_prog_data->vertices_in;
gs.ScratchSpaceBasePointer = (struct anv_address) {
- .bo = NULL,
- .offset = pipeline->scratch_start[MESA_SHADER_GEOMETRY],
+ .bo = anv_scratch_pool_alloc(device, &device->scratch_pool,
+ MESA_SHADER_GEOMETRY,
+ gs_prog_data->base.base.total_scratch),
+ .offset = 0,
};
gs.PerThreadScratchSpace = scratch_space(&gs_prog_data->base.base);
gs.OutputVertexSize = gs_prog_data->output_vertex_size_hwords * 2 - 1;
@@ -431,8 +433,10 @@ genX(graphics_pipeline_create)(
vs.SoftwareExceptionEnable = false;
vs.ScratchSpaceBasePointer = (struct anv_address) {
- .bo = NULL,
- .offset = pipeline->scratch_start[MESA_SHADER_VERTEX],
+ .bo = anv_scratch_pool_alloc(device, &device->scratch_pool,
+ MESA_SHADER_VERTEX,
+ vs_prog_data->base.base.total_scratch),
+ .offset = 0,
};
vs.PerThreadScratchSpace = scratch_space(&vs_prog_data->base.base);
@@ -483,8 +487,10 @@ genX(graphics_pipeline_create)(
ps.MaximumNumberofThreadsPerPSD = 64 - num_thread_bias;
ps.ScratchSpaceBasePointer = (struct anv_address) {
- .bo = NULL,
- .offset = pipeline->scratch_start[MESA_SHADER_FRAGMENT],
+ .bo = anv_scratch_pool_alloc(device, &device->scratch_pool,
+ MESA_SHADER_FRAGMENT,
+ wm_prog_data->base.total_scratch),
+ .offset = 0,
};
ps.PerThreadScratchSpace = scratch_space(&wm_prog_data->base);