Revert "nir: Add an option for lowering TessLevelInner/Outer to vecs"
This reverts commit d2df076120
.
The option is not used by any driver.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5744>
This commit is contained in:
@@ -69,12 +69,6 @@ struct spirv_to_nir_options {
|
|||||||
*/
|
*/
|
||||||
bool tess_levels_are_sysvals;
|
bool tess_levels_are_sysvals;
|
||||||
|
|
||||||
/* Whether to lower TessLevelInner/Outer from their SPIR-V declarations
|
|
||||||
* as arrays of floats to vec4 and vec2 respectively. This is the same as
|
|
||||||
* LowerTessLevel in GLSL.
|
|
||||||
*/
|
|
||||||
bool lower_tess_levels_to_vec;
|
|
||||||
|
|
||||||
struct spirv_supported_capabilities caps;
|
struct spirv_supported_capabilities caps;
|
||||||
|
|
||||||
/* Address format for various kinds of pointers. */
|
/* Address format for various kinds of pointers. */
|
||||||
|
@@ -1620,11 +1620,6 @@ apply_var_decoration(struct vtn_builder *b,
|
|||||||
switch (builtin) {
|
switch (builtin) {
|
||||||
case SpvBuiltInTessLevelOuter:
|
case SpvBuiltInTessLevelOuter:
|
||||||
case SpvBuiltInTessLevelInner:
|
case SpvBuiltInTessLevelInner:
|
||||||
/* Since the compact flag is only valid on arrays, don't set it if
|
|
||||||
* we are lowering TessLevelInner/Outer to vec4/vec2. */
|
|
||||||
if (!b->options || !b->options->lower_tess_levels_to_vec)
|
|
||||||
var_data->compact = true;
|
|
||||||
break;
|
|
||||||
case SpvBuiltInClipDistance:
|
case SpvBuiltInClipDistance:
|
||||||
case SpvBuiltInCullDistance:
|
case SpvBuiltInCullDistance:
|
||||||
var_data->compact = true;
|
var_data->compact = true;
|
||||||
@@ -1835,22 +1830,6 @@ var_decoration_cb(struct vtn_builder *b, struct vtn_value *val, int member,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
var_decoration_tess_level_vec_cb(
|
|
||||||
struct vtn_builder *b, struct vtn_value *val, int member,
|
|
||||||
const struct vtn_decoration *dec, void *void_var)
|
|
||||||
{
|
|
||||||
struct vtn_variable *vtn_var = void_var;
|
|
||||||
if (dec->decoration == SpvDecorationBuiltIn) {
|
|
||||||
SpvBuiltIn builtin = dec->operands[0];
|
|
||||||
if (builtin == SpvBuiltInTessLevelOuter) {
|
|
||||||
vtn_var->var->type = glsl_vector_type(GLSL_TYPE_FLOAT, 4);
|
|
||||||
} else if (builtin == SpvBuiltInTessLevelInner) {
|
|
||||||
vtn_var->var->type = glsl_vector_type(GLSL_TYPE_FLOAT, 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
enum vtn_variable_mode
|
enum vtn_variable_mode
|
||||||
vtn_storage_class_to_mode(struct vtn_builder *b,
|
vtn_storage_class_to_mode(struct vtn_builder *b,
|
||||||
SpvStorageClass class,
|
SpvStorageClass class,
|
||||||
@@ -2436,9 +2415,6 @@ vtn_create_variable(struct vtn_builder *b, struct vtn_value *val,
|
|||||||
vtn_foreach_decoration(b, val, var_decoration_cb, var);
|
vtn_foreach_decoration(b, val, var_decoration_cb, var);
|
||||||
vtn_foreach_decoration(b, val, ptr_decoration_cb, val->pointer);
|
vtn_foreach_decoration(b, val, ptr_decoration_cb, val->pointer);
|
||||||
|
|
||||||
if (b->options && b->options->lower_tess_levels_to_vec)
|
|
||||||
vtn_foreach_decoration(b, val, var_decoration_tess_level_vec_cb, var);
|
|
||||||
|
|
||||||
/* Propagate access flags from the OpVariable decorations. */
|
/* Propagate access flags from the OpVariable decorations. */
|
||||||
val->pointer->access |= var->access;
|
val->pointer->access |= var->access;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user