{
gl_system_value sysval = nir_intrinsic_barycentric_sysval(intr);
- if (!ctx->so->key.msaa) {
+ if (!ctx->so->key.msaa && ctx->compiler->gen < 6) {
switch (sysval) {
case SYSTEM_VALUE_BARYCENTRIC_PERSP_SAMPLE:
sysval = SYSTEM_VALUE_BARYCENTRIC_PERSP_PIXEL;
break;
case SYSTEM_VALUE_BARYCENTRIC_PERSP_CENTROID:
- if (ctx->compiler->gen < 6)
- sysval = SYSTEM_VALUE_BARYCENTRIC_PERSP_PIXEL;
+ sysval = SYSTEM_VALUE_BARYCENTRIC_PERSP_PIXEL;
break;
case SYSTEM_VALUE_BARYCENTRIC_LINEAR_SAMPLE:
sysval = SYSTEM_VALUE_BARYCENTRIC_LINEAR_PIXEL;
break;
case SYSTEM_VALUE_BARYCENTRIC_LINEAR_CENTROID:
- if (ctx->compiler->gen < 6)
- sysval = SYSTEM_VALUE_BARYCENTRIC_LINEAR_PIXEL;
+ sysval = SYSTEM_VALUE_BARYCENTRIC_LINEAR_PIXEL;
break;
default:
break;
}
/* Only used for deciding on behavior of
- * nir_intrinsic_load_barycentric_sample, or the centroid demotion
+ * nir_intrinsic_load_barycentric_sample and the centroid demotion
* on older HW.
*/
- key->msaa = info->fs.uses_sample_qualifier ||
- (shader->compiler->gen < 6 &&
+ key->msaa = shader->compiler->gen < 6 &&
+ (info->fs.uses_sample_qualifier ||
(BITSET_TEST(info->system_values_read,
SYSTEM_VALUE_BARYCENTRIC_PERSP_CENTROID) ||
BITSET_TEST(info->system_values_read,
return;
const VkPipelineMultisampleStateCreateInfo *msaa_info = pipeline_info->pMultisampleState;
- const struct VkPipelineSampleLocationsStateCreateInfoEXT *sample_locations =
- vk_find_struct_const(msaa_info->pNext, PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT);
- if (msaa_info->rasterizationSamples > 1 ||
- /* also set msaa key when sample location is not the default
- * since this affects varying interpolation */
- (sample_locations && sample_locations->sampleLocationsEnable)) {
- key->msaa = true;
- }
/* The 1.3.215 spec says:
*