Merge pull request #2300 from KhronosGroup/generalize-precision
[platform/upstream/glslang.git] / Test / spv.precisionArgs.frag
1 #version 310 es
2
3 precision mediump float;
4
5 void fooConst(const in float f, const in highp float g) { }
6
7 void foo(in float f, in highp float g) { }
8
9       float retM (      float x) { return x; }
10 highp float retH (highp float x) { return x; }
11       float retHM(highp float x) { return x; }
12 highp float retMH(      float x) { return x; }
13
14 void main()
15 {
16     float aM, bM;
17     highp float aH, bH;
18     fooConst(aM, bM);   // must copy bM
19     fooConst(aH, bH);   // must copy aH
20     foo(aM, bM);
21     foo(aH, bH);
22
23     retM(aM);
24     retH(aH);
25     retHM(aH);
26     retMH(aM);
27 }