Bug 74207 - [i965 Bisected]Piglit/glslparsertest_CorrectVersion1.V110.frag fails
Summary: [i965 Bisected]Piglit/glslparsertest_CorrectVersion1.V110.frag fails
Status: VERIFIED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: unspecified
Hardware: All Linux (All)
: high major
Assignee: Matt Turner
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-01-30 03:10 UTC by lu hua
Modified: 2014-06-10 05:30 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description lu hua 2014-01-30 03:10:25 UTC
System Environment:
--------------------------
Platform: Ironlake/Sandybridge/Ivybridge/Haswell/Baytrail
Libdrm:		(master)libdrm-2.4.52-2-gcbb31f2d6e674513c0f66484c414475baba09153
Mesa:		(master)023a50dd9b368fba5b53dca347e90b46893c0348
Xserver:	(master)xorg-server-1.15.0-583-gda1660deeb9032ecca61f4bcdc9fc2eec2ada445
Xf86_video_intel:(master)2.99.907-60-g9f3fc9ec49f0caf53344577896ef9b6468cd3d4f
Cairo:		(master)5de25951a43f51cade42549ae60e52ffb391d61e
Libva:		(staging)79ddde6bab54618046f136471c020c08ff4fde50
Libva_intel_driver:(staging)c25fe67b1f1e269dc8d0152ce883788ef9288aea
Kernel:	(drm-intel-nightly) 164a4cb4c1431a0689f85507868356fae24da638

Bug detailed description:
-----------------------------
It fails on Ironlake/Sandybridge/Ivybridge/Haswell/Baytrail with mesa master branch. It doesn't happen on 10.0 branch.
(GLES20)GL_build_DuplicateVersion1_V100_frag.test also fails with same bisect commit.

Bisect shows: 3e0e9e3bf9e597eb74b06381b3418c958be4d452 is the first bad commit.
commit 3e0e9e3bf9e597eb74b06381b3418c958be4d452
Author:     Matt Turner <mattst88@gmail.com>
AuthorDate: Sat Jan 25 11:57:02 2014 -0800
Commit:     Matt Turner <mattst88@gmail.com>
CommitDate: Mon Jan 27 21:15:35 2014 -0800

    glcpp: Check version_resolved in the proper place.

    The check was in the wrong place, such that if a shader incorrectly put
    a preprocessor token before the #version declaration, the version would
    be resolved twice, leading to a segmentation fault when attempting to
    redefine the __VERSION__ macro.

     #extension GL_ARB_sample_shading: require
     #version 130
     void main() {}

    Also, rename glcpp_parser_resolve_version to
                 glcpp_parser_resolve_implicit_version to avoid confusion.

    Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
    Reviewed-by: Carl Worth <cworth@cworth.org>
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>

 
Successfully compiled fragment shader /GFX/Test/Piglit/piglit/tests/glslparsertest/shaders/CorrectVersion1.V110.frag:
Shader source:
// [config]
// expect_result: fail
// glsl_version: 1.10
//
// # NOTE: Config section was auto-generated from file
// # NOTE: 'glslparser.tests' at git revision
// # NOTE: 6cc17ae70b70d150aa1751f8e28db7b2a9bd50f0
// [end config]

/* Only one version statement is allowed; two should raise an error. */
#version 110
#version 110

void main()
{
   gl_FragColor = vec4(1);
}

PIGLIT: {'result': 'fail' }


Reproduce steps:
----------------------------
1. xinit
2. ./bin/glslparsertest tests/glslparsertest/shaders/CorrectVersion1.V110.frag fail 1.10
Comment 1 Matt Turner 2014-01-30 03:28:32 UTC

*** This bug has been marked as a duplicate of bug 74166 ***
Comment 2 lu hua 2014-06-10 05:30:40 UTC
Verified.Fixed.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.