Add precision qualifier propagation for swizzling, texture lookups, built-in funtions mapped to operators, comma op, and more robustly propagate for all binary/unary ops.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@21622 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-05-17 02:51:45 +00:00
parent 61f205ecd8
commit 2d0f1e5424
4 changed files with 68 additions and 37 deletions

View File

@@ -10,6 +10,10 @@ lowp vec2 foo(mediump vec3 mv3)
int global_medium;
uniform lowp sampler2D samplerLow;
uniform mediump sampler2D samplerMed;
uniform highp sampler2D samplerHigh;
precision highp int;
precision highp ivec2; // ERROR
precision mediump int[2]; // ERROR
@@ -59,4 +63,8 @@ void main()
sum += level1_low3;
sum += 4 + ((ivec2(level1_low3) * ivec2(level1_high) + ivec2((/* comma operator */level1_low3, level1_high)))).x;
texture2D(samplerLow, vec2(0.1, 0.2));
texture2D(samplerMed, vec2(0.1, 0.2));
texture2D(samplerHigh, vec2(0.1, 0.2));
}