Bug 91016

Summary: Piglit regression: shaders/glsl-floating-constant-120
Product: Mesa Reporter: Brian Wilson <brian.wilson>
Component: Drivers/Gallium/i915gAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED MOVED QA Contact: Default DRI bug account <dri-devel>
Severity: major    
Priority: medium CC: anuj.phogat, chadversary
Version: 10.6   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Brian Wilson 2015-06-18 00:16:25 UTC
Piglit test: shaders/glsl-floating-constant-120

We are seeing this Piglit regression on pineview (chromebook, the only chrome platform in our stable still using X and tested with Piglit)

The version of Mesa that ChromeOS is currently using passes this test in piglit. It is based on the following commit plus an additional 34 patches:
    1291788 glsl: Generate unique names for each const array lowered to uniforms [Nov 2014-ish]

It fails in the following Mesa commit:
    c2a0600 i965: Don't set NirOptions for stages that will use the vec4 backend [May 2015-ish]

It also fails in this recent Mesa commit:
    1a6e4f46ed117b393e26aff326e5b05d4aea7fb0 (gallium: remove explicit values from PIPE_CAP_ enums) [~June 10, 2015]
Comment 1 Ian Romanick 2015-06-22 17:04:22 UTC
Does your piglit have the following commit?  Mesa was updated to follow the spec, and the test was previously incorrect.

commit 63aef6af996d5ca37e9dee78e0392106848e2735
Author: Neil Roberts <neil@linux.intel.com>
Date:   Wed Nov 26 18:35:32 2014 +0000

    Don't test floats with the form ‘1f’
    
    There is nothing in the GLSL spec which says you can have a float
    literal without an exponent or a decimal point even if you add the ‘f’
    suffix. This patch replaces that literal with some other variations
    that should be accepted according to the spec.
    
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
Comment 2 Brian Wilson 2015-06-22 17:22:30 UTC
This is the version of Piglit that is being used:
http://cgit.freedesktop.org/piglit/commit/?id=1f39e07d44f7d78557d69c505168afb8eab913c6

Here is the failing test output:
06/13 08:50:32.209 DEBUG|        base_utils:0239| [stdout] + Running test [shaders/glsl-floating-constant-120] of expected runtime 0.0 sec: [bin/shader_runner tests/shaders/glsl-floating-constant-120.shader_test -auto]
06/13 08:50:32.310 DEBUG|        base_utils:0239| [stderr] Failed to compile FS: 0:5(14): error: syntax error, unexpected NEW_IDENTIFIER, expecting ',' or ';'
06/13 08:50:32.312 DEBUG|        base_utils:0239| [stderr] 
06/13 08:50:32.314 DEBUG|        base_utils:0239| [stdout] PIGLIT: {"result": "fail" }
06/13 08:50:32.315 DEBUG|        base_utils:0239| [stdout] + fail :: shaders/glsl-floating-constant-120
Comment 3 Chad Versace 2015-06-22 18:19:21 UTC
Brian Wilson said:
> It fails in the following Mesa commit:
>   c2a0600 i965: Don't set NirOptions for stages that will use the vec4 backend [May 2015-ish]

Incorrect. The actual Mesa tree that Brian's team is validating is commit c1a0600 plus many patches. I've the pushed the full tree, patches included, to 

  git://github.com/chadversary/mesa refs/tags/chadv/cros-gerrit-262788-patched

Also, the Piglit being tested is the following commit plus a few incosequential patches.

  commit 4069bec62a8a99c44573395ea1597694eeee760f
  Author:     Marek Olšák <marek.olsak@amd.com>
  AuthorDate: Thu Apr 30 14:11:26 2015 +0200
  Commit:     Marek Olšák <marek.olsak@amd.com>
  CommitDate: Thu Apr 30 22:41:02 2015 +0200
  Subject: framework: use the correct executable for GLES parser tests

Building that Piglit against recent Mesa, however, produces an error at linktime. The fix requires backporting Piglit commit 845ba0e4dfb9372307f5d3032abdd0860e76731b.
Comment 4 Mark Janes 2015-06-22 19:13:51 UTC
I was able to reproduce this bug using the old versions of piglit and mesa

  piglit:  1f39e07d44f7d78557d69c505168afb8eab913c6
  mesa:    c2a0600

After updating piglit to the latest revision, the test passes.  This
seems to be the correct behavior, based on Ian's comment.

Based on this information, I think it is safe to conclude that this
bug does not indicate a regression in mesa.  Instead, it is caused by
using a fixed version of mesa, but failing to pull in the
corresponding piglit fix.
Comment 5 GitLab Migration User 2019-09-18 19:31:00 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/667.

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.