Track separate precision defaults for each kind of sampler, give initial defaults as per spec. Also make fragment floats have no default. Modify/add tests to adapt to these changes.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@22066 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
@@ -1,23 +1,23 @@
|
||||
#version 300 es
|
||||
|
||||
uniform sampler2D s2D;
|
||||
uniform sampler3D s3D;
|
||||
uniform lowp sampler3D s3D;
|
||||
uniform samplerCube sCube;
|
||||
uniform samplerCubeShadow sCubeShadow;
|
||||
uniform sampler2DShadow s2DShadow;
|
||||
uniform sampler2DArray s2DArray;
|
||||
uniform sampler2DArrayShadow s2DArrayShadow;
|
||||
uniform lowp samplerCubeShadow sCubeShadow;
|
||||
uniform lowp sampler2DShadow s2DShadow;
|
||||
uniform lowp sampler2DArray s2DArray;
|
||||
uniform lowp sampler2DArrayShadow s2DArrayShadow;
|
||||
|
||||
uniform isampler2D is2D;
|
||||
uniform isampler3D is3D;
|
||||
uniform isamplerCube isCube;
|
||||
uniform isampler2DArray is2DArray;
|
||||
|
||||
uniform usampler2D us2D;
|
||||
uniform usampler3D us3D;
|
||||
uniform usamplerCube usCube;
|
||||
uniform usampler2DArray us2DArray;
|
||||
uniform lowp isampler2D is2D;
|
||||
uniform lowp isampler3D is3D;
|
||||
uniform lowp isamplerCube isCube;
|
||||
uniform lowp isampler2DArray is2DArray;
|
||||
|
||||
uniform lowp usampler2D us2D;
|
||||
uniform lowp usampler3D us3D;
|
||||
uniform lowp usamplerCube usCube;
|
||||
uniform lowp usampler2DArray us2DArray;
|
||||
precision lowp float;
|
||||
in float c1D;
|
||||
in vec2 c2D;
|
||||
in vec3 c3D;
|
||||
@@ -28,15 +28,15 @@ flat in ivec2 ic2D;
|
||||
flat in ivec3 ic3D;
|
||||
flat in ivec4 ic4D;
|
||||
noperspective in vec4 badv; // ERROR
|
||||
in sampler2D bads; // ERROR
|
||||
precision lowp uint; // ERROR
|
||||
in sampler2D bads; // ERROR
|
||||
precision lowp uint; // ERROR
|
||||
|
||||
struct s {
|
||||
int i;
|
||||
sampler2D s; // ERROR
|
||||
sampler2D s;
|
||||
};
|
||||
|
||||
out s badout; // ERROR
|
||||
out s badout; // ERROR
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
#version 300 es
|
||||
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
vec4 u;
|
||||
uvec4 v;
|
||||
isampler3D sampler;
|
||||
lowp isampler3D sampler;
|
||||
vec3 w;
|
||||
struct T1 { // ERROR
|
||||
int a;
|
||||
@@ -15,7 +17,7 @@ uniform S s;
|
||||
uniform fooBlock {
|
||||
uvec4 bv;
|
||||
mat2 bm2;
|
||||
isampler2D sampler; // ERROR
|
||||
lowp isampler2D sampler; // ERROR
|
||||
struct T2 { // ERROR
|
||||
int a;
|
||||
} t;
|
||||
@@ -35,5 +37,5 @@ uniform barBlockArray {
|
||||
void main()
|
||||
{
|
||||
texture(s.sampler, vec3(inst.ni, bv.y, insts[2].nbv.z));
|
||||
insts[s.v.x]; // ERROR
|
||||
insts[s.v.x]; // ERROR
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#version 300 es
|
||||
|
||||
precision mediump float;
|
||||
in vec4 pos;
|
||||
layout (location = 2) in vec4 color; // ERROR
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#version 300 es
|
||||
|
||||
uniform block {
|
||||
float f;
|
||||
mediump float f;
|
||||
} instanceName;
|
||||
|
||||
struct S {
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#version 110
|
||||
|
||||
uniform vec4 bigColor;
|
||||
varying vec4 BaseColor;
|
||||
uniform float d;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#version 100
|
||||
|
||||
varying vec3 color;
|
||||
varying vec3 color; // ERRROR, there is no default qualifier for float
|
||||
|
||||
lowp vec2 foo(mediump vec3 mv3)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#version 300 es
|
||||
|
||||
uniform int c, d;
|
||||
in float x;
|
||||
highp in float x;
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
@@ -11,6 +11,7 @@ versionsErrors.vert
|
||||
130.frag
|
||||
140.frag
|
||||
precision.frag
|
||||
precision.vert
|
||||
nonSquare.vert
|
||||
matrixError.vert
|
||||
cppSimple.vert
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#version 300 es
|
||||
in uvec2 badu; // ERROR
|
||||
flat in uvec2 t;
|
||||
in float f;
|
||||
in vec2 tc;
|
||||
in highp float f;
|
||||
in highp vec2 tc;
|
||||
in bool bad; // ERROR
|
||||
uniform uvec4 v;
|
||||
uniform int i;
|
||||
@@ -10,7 +10,7 @@ uniform bool b;
|
||||
|
||||
out uvec4 c;
|
||||
|
||||
uniform usampler2D usampler;
|
||||
uniform lowp usampler2D usampler;
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
@@ -33,10 +33,10 @@
|
||||
//
|
||||
#version 300 es
|
||||
|
||||
in vec3 color;
|
||||
out vec4 foo;
|
||||
in highp vec3 color;
|
||||
out highp vec4 foo;
|
||||
|
||||
uniform sampler2DArrayShadow bar;
|
||||
uniform highp sampler2DArrayShadow bar;
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user