File: fs-equal-of-expression.shader_test

package info (click to toggle)
piglit 0~git20200212-f4710c51b-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 106,972 kB
  • sloc: ansic: 263,763; xml: 48,941; python: 29,918; lisp: 19,789; cpp: 12,142; sh: 22; makefile: 20; pascal: 5
file content (35 lines) | stat: -rw-r--r-- 704 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
[require]
GLSL >= 1.10

[vertex shader]
varying vec4 c;
attribute vec4 piglit_vertex;

void main()
{
    c = vec4(2.0, 13.0, 1.0, 0.0);
    gl_Position = piglit_vertex;
}

[fragment shader]
uniform vec4 a;
uniform float b;

varying vec4 c;

void main()
{
    /* This tickles a bug in the i965 driver on GEN4 and GEN5 platforms.  An
     * optimization tries to be clever doing a float cast of comparison with a
     * constant value of zero.  However, the generated comparison was
     * inverted, so everything went wrong.
     */
    gl_FragColor = vec4(equal(a * c, vec4(b, 13, 0, 0)));
}

[test]
uniform vec4 a 1.0 1.0 1.0 1.0
uniform float b 38.2

draw rect -1 -1 2 2
probe all rgba 0.0 1.0 0.0 1.0