spirv: add support for SpvBuiltInBaryCoord*

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3578>
This commit is contained in:
Samuel Pitoiset 2020-01-24 10:54:06 +01:00 committed by Marge Bot
parent 61d24080bb
commit df8dd12e5b

View file

@ -1510,6 +1510,34 @@ vtn_get_builtin_location(struct vtn_builder *b,
*location = SYSTEM_VALUE_GLOBAL_GROUP_SIZE;
set_mode_system_value(b, mode);
break;
case SpvBuiltInBaryCoordNoPerspAMD:
*location = SYSTEM_VALUE_BARYCENTRIC_LINEAR_PIXEL;
set_mode_system_value(b, mode);
break;
case SpvBuiltInBaryCoordNoPerspCentroidAMD:
*location = SYSTEM_VALUE_BARYCENTRIC_LINEAR_CENTROID;
set_mode_system_value(b, mode);
break;
case SpvBuiltInBaryCoordNoPerspSampleAMD:
*location = SYSTEM_VALUE_BARYCENTRIC_LINEAR_SAMPLE;
set_mode_system_value(b, mode);
break;
case SpvBuiltInBaryCoordSmoothAMD:
*location = SYSTEM_VALUE_BARYCENTRIC_PERSP_PIXEL;
set_mode_system_value(b, mode);
break;
case SpvBuiltInBaryCoordSmoothCentroidAMD:
*location = SYSTEM_VALUE_BARYCENTRIC_PERSP_CENTROID;
set_mode_system_value(b, mode);
break;
case SpvBuiltInBaryCoordSmoothSampleAMD:
*location = SYSTEM_VALUE_BARYCENTRIC_PERSP_SAMPLE;
set_mode_system_value(b, mode);
break;
case SpvBuiltInBaryCoordPullModelAMD:
*location = SYSTEM_VALUE_BARYCENTRIC_PULL_MODEL;
set_mode_system_value(b, mode);
break;
default:
vtn_fail("Unsupported builtin: %s (%u)",
spirv_builtin_to_string(builtin), builtin);