[Mesa-dev] [Bug 89330] piglit glsl-1.50 invariant-qualifier-in-out-block-01 regression

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Feb 25 18:35:39 PST 2015


https://bugs.freedesktop.org/show_bug.cgi?id=89330

            Bug ID: 89330
           Summary: piglit glsl-1.50 invariant-qualifier-in-out-block-01
                    regression
           Product: Mesa
           Version: git
          Hardware: x86-64 (AMD64)
                OS: Linux (All)
            Status: NEW
          Keywords: bisected, regression
          Severity: normal
          Priority: medium
         Component: Mesa core
          Assignee: mesa-dev at lists.freedesktop.org
          Reporter: vlee at freedesktop.org
        QA Contact: mesa-dev at lists.freedesktop.org
                CC: idr at freedesktop.org, mattst88 at gmail.com,
                    siglesias at igalia.com

mesa: 1a93e7690dc90211164082d6a2d26d93da8127ef (master 10.6.0-devel)

$ ./bin/glslparsertest
tests/spec/glsl-1.50/compiler/invariant-qualifier-in-out-block-01.vert pass
1.50
Failed to compile vertex shader
tests/spec/glsl-1.50/compiler/invariant-qualifier-in-out-block-01.vert:
0:10(1): error: invariant qualifiers cannot be used with interface blocks
members

Shader source:
// [config]
// expect_result: pass
// glsl_version: 1.50
// [end config]
//
// Tests that the invariant qualifier can be applied to a member of an out
block.

#version 150

out block {
    invariant vec4 x;
};

void main()
{
}

PIGLIT: {"result": "fail" }



fe1e89a026fb85cc7dffbd3f967687186796631e is the first bad commit
commit fe1e89a026fb85cc7dffbd3f967687186796631e
Author: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
Date:   Tue Nov 25 14:03:05 2014 +0100

    glsl: don't allow invariant qualifiers for interface blocks

    GLSL 1.50 and GLSL 4.40 specs, they both say the same in
    "Interface Blocks" section:

    "If optional qualifiers are used, they can include interpolation
qualifiers,
    auxiliary storage qualifiers, and storage qualifiers and they must declare
    an input, output, or uniform member consistent with the interface qualifier
    of the block"

    From GLSL ES 3.0, chapter 4.3.7 "Interface Blocks", page 38:

    "GLSL ES 3.0 does not support interface blocks for shader inputs or
outputs."

    and from GLSL ES 3.0, chapter 4.6.1 "The invariant qualifier", page 52.

    "Only variables output from a shader can be candidates for invariance."

    This patch fixes the following dEQP tests:

   
dEQP-GLES3.functional.shaders.declarations.invalid_declarations.invariant_uniform_block_2_vertex
   
dEQP-GLES3.functional.shaders.declarations.invalid_declarations.invariant_uniform_block_2_fragment

    No piglit regressions.

    Signed-off-by: Samuel Iglesias Gonsalvez <siglesias at igalia.com>

    v2:

    - Enable this check for GLSL.

    Signed-off-by: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

:040000 040000 0cee593d241827bd1c6d887230a9c0a80469d1d4
60a36c9d9729caa6272b959d003de9124e1509e3 M    src
bisect run success

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150226/f0f7a3a5/attachment.html>


More information about the mesa-dev mailing list