anv/pipeline: Fix point size
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 19 Jan 2016 20:02:53 +0000 (12:02 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 19 Jan 2016 20:03:13 +0000 (12:03 -0800)
src/vulkan/anv_pipeline.c

index 517fcb0ac3aaccf834b63f7e58d56184f67561e6..2a22497815a529235c402ae1eaac9f4115c533ba 100644 (file)
@@ -544,7 +544,8 @@ anv_pipeline_compile_vs(struct anv_pipeline *pipeline,
       ralloc_steal(mem_ctx, nir);
 
    prog_data->inputs_read = nir->info.inputs_read;
-   pipeline->writes_point_size = nir->info.outputs_written & VARYING_SLOT_PSIZ;
+   if (nir->info.outputs_written & (1ull << VARYING_SLOT_PSIZ))
+      pipeline->writes_point_size = true;
 
    brw_compute_vue_map(&pipeline->device->info,
                        &prog_data->base.vue_map,
@@ -608,6 +609,9 @@ anv_pipeline_compile_gs(struct anv_pipeline *pipeline,
    if (module->nir == NULL)
       ralloc_steal(mem_ctx, nir);
 
+   if (nir->info.outputs_written & (1ull << VARYING_SLOT_PSIZ))
+      pipeline->writes_point_size = true;
+
    brw_compute_vue_map(&pipeline->device->info,
                        &prog_data->base.vue_map,
                        nir->info.outputs_written,