X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fglsl%2Fbuiltin_variables.cpp;h=a1cdec597fad93dccb557003e339770260513b97;hb=8eceac9de7d3cd4fddabbe61d512acfed9812169;hp=00bc99dd619767b13d84ab3113cf1488284d6e85;hpb=4d24a7cb97641cacecd371d1968f6964785822e4;p=mesa.git diff --git a/src/compiler/glsl/builtin_variables.cpp b/src/compiler/glsl/builtin_variables.cpp index 00bc99dd619..a1cdec597fa 100644 --- a/src/compiler/glsl/builtin_variables.cpp +++ b/src/compiler/glsl/builtin_variables.cpp @@ -38,11 +38,6 @@ static const struct gl_builtin_uniform_element gl_NumSamples_elements[] = { {NULL, {STATE_NUM_SAMPLES, 0, 0}, SWIZZLE_XXXX} }; -/* only for TCS */ -static const struct gl_builtin_uniform_element gl_PatchVerticesIn_elements[] = { - {NULL, {STATE_INTERNAL, STATE_TCS_PATCH_VERTICES_IN}, SWIZZLE_XXXX} -}; - static const struct gl_builtin_uniform_element gl_DepthRange_elements[] = { {"near", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_XXXX}, {"far", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_YYYY}, @@ -90,9 +85,9 @@ static const struct gl_builtin_uniform_element gl_LightSource_elements[] = { SWIZZLE_Y, SWIZZLE_Z, SWIZZLE_Z)}, - {"spotCosCutoff", {STATE_LIGHT, 0, STATE_SPOT_DIRECTION}, SWIZZLE_WWWW}, - {"spotCutoff", {STATE_LIGHT, 0, STATE_SPOT_CUTOFF}, SWIZZLE_XXXX}, {"spotExponent", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_WWWW}, + {"spotCutoff", {STATE_LIGHT, 0, STATE_SPOT_CUTOFF}, SWIZZLE_XXXX}, + {"spotCosCutoff", {STATE_LIGHT, 0, STATE_SPOT_DIRECTION}, SWIZZLE_WWWW}, {"constantAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_XXXX}, {"linearAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_YYYY}, {"quadraticAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_ZZZZ}, @@ -240,7 +235,6 @@ static const struct gl_builtin_uniform_element gl_NormalMatrix_elements[] = { #define STATEVAR(name) {#name, name ## _elements, ARRAY_SIZE(name ## _elements)} static const struct gl_builtin_uniform_desc _mesa_builtin_uniform_desc[] = { - STATEVAR(gl_PatchVerticesIn), STATEVAR(gl_NumSamples), STATEVAR(gl_DepthRange), STATEVAR(gl_ClipPlane), @@ -447,7 +441,7 @@ private: builtin_variable_generator::builtin_variable_generator( exec_list *instructions, struct _mesa_glsl_parse_state *state) : instructions(instructions), state(state), symtab(state->symbols), - compatibility(state->compat_shader || !state->is_version(140, 100)), + compatibility(state->compat_shader || state->ARB_compatibility_enable), bool_t(glsl_type::bool_type), int_t(glsl_type::int_type), uint_t(glsl_type::uint_type), uint64_t(glsl_type::uint64_t_type), @@ -1067,12 +1061,7 @@ builtin_variable_generator::generate_tcs_special_vars() { add_system_value(SYSTEM_VALUE_PRIMITIVE_ID, int_t, "gl_PrimitiveID"); add_system_value(SYSTEM_VALUE_INVOCATION_ID, int_t, "gl_InvocationID"); - - if (state->ctx->Const.LowerTCSPatchVerticesIn) { - add_uniform(int_t, "gl_PatchVerticesIn"); - } else { - add_system_value(SYSTEM_VALUE_VERTICES_IN, int_t, "gl_PatchVerticesIn"); - } + add_system_value(SYSTEM_VALUE_VERTICES_IN, int_t, "gl_PatchVerticesIn"); add_output(VARYING_SLOT_TESS_LEVEL_OUTER, array(float_t, 4), "gl_TessLevelOuter")->data.patch = 1; @@ -1205,6 +1194,7 @@ builtin_variable_generator::generate_fs_special_vars() var->data.precision = GLSL_PRECISION_MEDIUM; var->data.read_only = 1; var->data.fb_fetch_output = 1; + var->data.memory_coherent = 1; } if (state->es_shader && state->language_version == 100 && state->EXT_blend_func_extended_enable) {