[Mesa-dev] [PATCH] glsl/builtins: Fix ARB_texture_cube_map_array built-in availability.

2013-06-28 Thread Kenneth Graunke
This patch adds texture() for isamplerCubeArray and usamplerCubeArray,
which were entirely missing.

It also makes texture() with a LOD bias fragment shader specific.  The
main GLSL specification explicitly says that texturing with LOD bias
should not be allowed for vertex shaders.

Affects Piglit's ARB_texture_cube_map_array/compiler/tex_bias-01.vert.
which tries to use bias in a vertex shader.  Currently, it expects this
to pass (so this patch regresses the test), but I've sent a patch to
reverse the expected behavior (so this patch would fix the updated test):
http://lists.freedesktop.org/archives/piglit/2013-June/006123.html

NOTE: This is a candidate for stable branches.

Cc: Paul Berry stereotype...@gmail.com
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
 src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag | 6 ++
 src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl | 3 ++-
 2 files changed, 8 insertions(+), 1 deletion(-)
 create mode 100644 src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag

diff --git a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag 
b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag
new file mode 100644
index 000..0d9f4f6
--- /dev/null
+++ b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag
@@ -0,0 +1,6 @@
+#version 130
+#extension GL_ARB_texture_cube_map_array : enable
+
+ vec4 texture( samplerCubeArray sampler, vec4 coord, float bias);
+ivec4 texture(isamplerCubeArray sampler, vec4 coord, float bias);
+uvec4 texture(usamplerCubeArray sampler, vec4 coord, float bias);
diff --git a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl 
b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
index 0f53212..73659b3 100644
--- a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
+++ b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
@@ -7,7 +7,8 @@ ivec3 textureSize(usamplerCubeArray sampler, int lod);
 ivec3 textureSize(samplerCubeArrayShadow sampler, int lod);
 
  vec4 texture( samplerCubeArray sampler, vec4 coord);
- vec4 texture( samplerCubeArray sampler, vec4 coord, float bias);
+ivec4 texture(isamplerCubeArray sampler, vec4 coord);
+uvec4 texture(usamplerCubeArray sampler, vec4 coord);
 float texture( samplerCubeArrayShadow sampler, vec4 P, float compare);
 
  vec4 textureGrad( samplerCubeArray sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-- 
1.8.3.1

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH] glsl/builtins: Fix ARB_texture_cube_map_array built-in availability.

2013-06-28 Thread Dave Airlie
On Sat, Jun 29, 2013 at 7:22 AM, Kenneth Graunke kenn...@whitecape.org wrote:
 This patch adds texture() for isamplerCubeArray and usamplerCubeArray,
 which were entirely missing.

 It also makes texture() with a LOD bias fragment shader specific.  The
 main GLSL specification explicitly says that texturing with LOD bias
 should not be allowed for vertex shaders.

 Affects Piglit's ARB_texture_cube_map_array/compiler/tex_bias-01.vert.
 which tries to use bias in a vertex shader.  Currently, it expects this
 to pass (so this patch regresses the test), but I've sent a patch to
 reverse the expected behavior (so this patch would fix the updated test):
 http://lists.freedesktop.org/archives/piglit/2013-June/006123.html

No idea how I missed these.

Reviewed-by: Dave Airlie airl...@redhat.com


 NOTE: This is a candidate for stable branches.

 Cc: Paul Berry stereotype...@gmail.com
 Signed-off-by: Kenneth Graunke kenn...@whitecape.org
 ---
  src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag | 6 ++
  src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl | 3 ++-
  2 files changed, 8 insertions(+), 1 deletion(-)
  create mode 100644 src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag

 diff --git a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag 
 b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag
 new file mode 100644
 index 000..0d9f4f6
 --- /dev/null
 +++ b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag
 @@ -0,0 +1,6 @@
 +#version 130
 +#extension GL_ARB_texture_cube_map_array : enable
 +
 + vec4 texture( samplerCubeArray sampler, vec4 coord, float bias);
 +ivec4 texture(isamplerCubeArray sampler, vec4 coord, float bias);
 +uvec4 texture(usamplerCubeArray sampler, vec4 coord, float bias);
 diff --git a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl 
 b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
 index 0f53212..73659b3 100644
 --- a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
 +++ b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
 @@ -7,7 +7,8 @@ ivec3 textureSize(usamplerCubeArray sampler, int lod);
  ivec3 textureSize(samplerCubeArrayShadow sampler, int lod);

   vec4 texture( samplerCubeArray sampler, vec4 coord);
 - vec4 texture( samplerCubeArray sampler, vec4 coord, float bias);
 +ivec4 texture(isamplerCubeArray sampler, vec4 coord);
 +uvec4 texture(usamplerCubeArray sampler, vec4 coord);
  float texture( samplerCubeArrayShadow sampler, vec4 P, float compare);

   vec4 textureGrad( samplerCubeArray sampler, vec4 P, vec3 dPdx, vec3 dPdy);
 --
 1.8.3.1

 ___
 mesa-dev mailing list
 mesa-dev@lists.freedesktop.org
 http://lists.freedesktop.org/mailman/listinfo/mesa-dev
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev