[Mesa-dev] [PATCH] glsl: add forgotten textureOffset function for sampler2DArrayShadow

sroland at vmware.com sroland at vmware.com
Mon Apr 18 21:05:04 UTC 2016


From: Roland Scheidegger <sroland at vmware.com>

This was part of EXT_gpu_shader4 - as such it should have been supported
by glsl 130.
It was however forgotten, and not added until glsl 430 - with the wrong
syntax no less (glsl 430 mentions it was overlooked).
glsl 440 (but revision 8 only) fixed this finally for good.
It looks like most other implementations would support this with older
glsl versions as well, so just add this to the other glsl 130 textureOffset
functions.

(Completely untested...)
---
 src/compiler/glsl/builtin_functions.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/compiler/glsl/builtin_functions.cpp b/src/compiler/glsl/builtin_functions.cpp
index f488434..004beb9 100644
--- a/src/compiler/glsl/builtin_functions.cpp
+++ b/src/compiler/glsl/builtin_functions.cpp
@@ -1707,6 +1707,9 @@ builtin_builder::create_builtins()
                 _texture(ir_tex, v130, glsl_type::uvec4_type, glsl_type::usampler2DArray_type, glsl_type::vec3_type, TEX_OFFSET),
 
                 _texture(ir_tex, v130, glsl_type::float_type, glsl_type::sampler1DArrayShadow_type, glsl_type::vec3_type, TEX_OFFSET),
+                /* the next one was forgotten in glsl spec (it's from EXT_gpu_shader4 initially),
+                   had wrong syntax in 4.30, correct only in 4.40 but allow it in 130 */
+                _texture(ir_tex, v130, glsl_type::float_type, glsl_type::sampler2DArrayShadow_type, glsl_type::vec4_type, TEX_OFFSET),
 
                 _texture(ir_txb, v130_fs_only, glsl_type::vec4_type,  glsl_type::sampler1D_type,  glsl_type::float_type, TEX_OFFSET),
                 _texture(ir_txb, v130_fs_only, glsl_type::ivec4_type, glsl_type::isampler1D_type, glsl_type::float_type, TEX_OFFSET),
-- 
2.1.4



More information about the mesa-dev mailing list