summaryrefslogtreecommitdiffstats
path: root/src/vulkan/gen8_pipeline.c
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2015-12-11 13:25:15 -0800
committerJason Ekstrand <[email protected]>2015-12-11 13:25:17 -0800
commitd12ea21dd5ea5bf00b7aecd98ec1f10f79f26c3a (patch)
treed04e8282986926eb68727ed6a56b71f31b0c47c9 /src/vulkan/gen8_pipeline.c
parente8032761483df36f2d176b8529ee4a8eb86b6b8d (diff)
gen8/pipeline: Support vec4 vertex shaders
In order to actually get them, you need INTEL_DEBUG=vec4.
Diffstat (limited to 'src/vulkan/gen8_pipeline.c')
-rw-r--r--src/vulkan/gen8_pipeline.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/vulkan/gen8_pipeline.c b/src/vulkan/gen8_pipeline.c
index 85b1e15a0f6..07a43bdbe55 100644
--- a/src/vulkan/gen8_pipeline.c
+++ b/src/vulkan/gen8_pipeline.c
@@ -484,7 +484,10 @@ genX(graphics_pipeline_create)(
offset = 1;
length = (vue_prog_data->vue_map.num_slots + 1) / 2 - offset;
- if (pipeline->vs_simd8 == NO_KERNEL || (extra && extra->disable_vs))
+ uint32_t vs_start = pipeline->vs_simd8 != NO_KERNEL ? pipeline->vs_simd8 :
+ pipeline->vs_vec4;
+
+ if (vs_start == NO_KERNEL || (extra && extra->disable_vs))
anv_batch_emit(&pipeline->batch, GENX(3DSTATE_VS),
.FunctionEnable = false,
/* Even if VS is disabled, SBE still gets the amount of
@@ -493,7 +496,7 @@ genX(graphics_pipeline_create)(
.VertexURBEntryOutputLength = length);
else
anv_batch_emit(&pipeline->batch, GENX(3DSTATE_VS),
- .KernelStartPointer = pipeline->vs_simd8,
+ .KernelStartPointer = vs_start,
.SingleVertexDispatch = Multiple,
.VectorMaskEnable = Dmask,
.SamplerCount = 0,
@@ -515,7 +518,7 @@ genX(graphics_pipeline_create)(
.MaximumNumberofThreads = device->info.max_vs_threads - 1,
.StatisticsEnable = false,
- .SIMD8DispatchEnable = true,
+ .SIMD8DispatchEnable = pipeline->vs_simd8 != NO_KERNEL,
.VertexCacheDisable = false,
.FunctionEnable = true,