[Bug 75294] New: [SNB/IVB/HSW/BYT Bisected]Piglit spec_glsl-1.30_preprocessor_reserved_double-underscore-01.frag fails

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Feb 20 18:39:14 PST 2014


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

          Priority: high
            Bug ID: 75294
          Assignee: idr at freedesktop.org
           Summary: [SNB/IVB/HSW/BYT Bisected]Piglit
                    spec_glsl-1.30_preprocessor_reserved_double-underscore
                    -01.frag fails
        QA Contact: intel-3d-bugs at lists.freedesktop.org
          Severity: major
    Classification: Unclassified
                OS: Linux (All)
          Reporter: huax.lu at intel.com
          Hardware: All
            Status: NEW
           Version: unspecified
         Component: Drivers/DRI/i965
           Product: Mesa

System Environment:
--------------------------
Platform: Haswell
Libdrm:       
(master)libdrm-2.4.52-4-gc5de5abbd90333fe1359283fb3a5e457b0f389f3
Mesa:        (master)57405605a8c320f9d6ea389afd43ce6f013330a5
Xserver:   
(master)xorg-server-1.15.0-627-gf34dc7fa96457ea6a0703493d74e63cca357712e
Xf86_video_intel:(master)2.99.910-47-gc91af569ee90a832899c9038badd84921e9a87fc
Cairo:        (master)4144307dbfbe7b297135d9ea4b080cae7e06b997
Libva:        (staging)fae9c44816a4c3cfc480d2879d1b4a0c1c3a1527
Libva_intel_driver:(staging)bd630edd844b88ea543a027654db296ff7da16cd
Kernel:    (drm-intel-nightly) 164a4cb4c1431a0689f85507868356fae24da638

Bug detailed description:
-------------------------
It fails on Sandybridge,Ivybridge,Haswell and Baytrail with mesa master branch,
works well on 10.1 branch.
Following piglit cases also fail with same bisect commit:
spec_glsl-1.30_preprocessor_reserved_double-underscore-02.frag    
spec_glsl-1.30_preprocessor_reserved_double-underscore-03.frag    

Bisect shows:0bd78926304e72ef3566e977d0cb5a959d86b809 is the first bad commit
commit 0bd78926304e72ef3566e977d0cb5a959d86b809
Author:     Ian Romanick <ian.d.romanick at intel.com>
AuthorDate: Tue Feb 18 09:10:36 2014 -0800
Commit:     Ian Romanick <ian.d.romanick at intel.com>
CommitDate: Wed Feb 19 15:08:50 2014 -0800

    glcpp: Only warn for macro names containing __

    Section 3.3 (Preprocessor) of the GLSL 1.30 spec (and later) and the
    GLSL ES spec (all versions) say:

        "All macro names containing two consecutive underscores ( __ ) are
        reserved for future use as predefined macro names. All macro names
        prefixed with "GL_" ("GL" followed by a single underscore) are also
        reserved."

    The intention is that names containing __ are reserved for internal use
    by the implementation, and names prefixed with GL_ are reserved for use
    by Khronos.  Since every extension adds a name prefixed with GL_ (i.e.,
    the name of the extension), that should be an error.  Names simply
    containing __ are dangerous to use, but should be allowed.  In similar
    cases, the C++ preprocessor specification says, "no diagnostic is
    required."

    Per the Khronos bug mentioned below, a future version of the GLSL
    specification will clarify this.

    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Cc: "9.2 10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Tested-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
    Tested-by: Darius Spitznagel <d.spitznagel at goodbytez.de>
    Cc: Tapani Pälli <lemody at gmail.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71870
    Bugzilla: Khronos #11702


output:
Successfully compiled fragment shader
/GFX/Test/Piglit/piglit/tests/spec/glsl-1.30/preprocessor/reserved/double-underscore-01.frag:
0:13(9): preprocessor warning: Macro names containing "__" are reserved for use
by the implementation.


Shader source:
// [config]
// expect_result: fail
// glsl_version: 1.30
// [end config]
//
// Check that macro names beginning with a doule underscore are reserved.
//
// From page 11 (17 of pdf) of the GLSL 1.30 spec:
//     "All macro names containing two consecutive underscores ( __ ) are
//     reserved for future use as predefined macro names."

#version 130
#define __I_AM_RESERVED 1

int f()
{
        return 0;
}

PIGLIT: {'result': 'fail' }


Reproduce steps:
-------------------------
1. xinit
2. ./bin/glslparsertest
/GFX/Test/Piglit/piglit/tests/spec/glsl-1.30/preprocessor/reserved/double-underscore-01.frag
fail 1.30

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20140221/14bcb9ac/attachment.html>


More information about the intel-3d-bugs mailing list