Bug 97326

Summary: [llvmpipe] [softpipe] piglit switch-case-duplicated regression
Product: Mesa Reporter: Vinson Lee <vlee>
Component: Mesa coreAssignee: mesa-dev
Status: RESOLVED DUPLICATE QA Contact: mesa-dev
Severity: normal    
Priority: medium CC: eric, idr, t_arceri
Version: gitKeywords: bisected, regression
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Vinson Lee 2016-08-12 17:49:17 UTC
mesa: 317e136ef0f1e5e21ee0edb309b3bd8242b29f35 (master 12.1.0-devel)

$ ./bin/glslparsertest tests/spec/glsl-1.30/compiler/switch-statement/switch-case-duplicated.vert fail 1.30
Successfully compiled vertex shader tests/spec/glsl-1.30/compiler/switch-statement/switch-case-duplicated.vert: 
Shader source:
// [config]
// expect_result: fail
// glsl_version: 1.30
// [end config]
//
// From page 57 (page 63 of the PDF) of the GLSL 1.30 spec:
//
//     "It is an error to have more than one default or a replicated
//      constant-expression."

#version 130

void main() {
   int tmp = 0;
   switch (1) {
   case 0:
   case 0:
      tmp = 1;
   }

   gl_Position = vec4(0.0);
}

PIGLIT: {"result": "fail" }


ee02a5e330151630be871decde563ddbf192465c is the first bad commit
commit ee02a5e330151630be871decde563ddbf192465c
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Aug 9 00:11:13 2016 -0700

    prog_hash_table: Convert to using util/hash_table.h.
    
    Improves glretrace -b servo.trace (a trace of Mozilla's servo rendering
    engine booting, rendering a page, and exiting) from 1.8s to 1.1s.  It uses
    a large uniform array of structs, making a huge number of separate program
    resources, and the fixed-size hash table was killing it.  Given how many
    times we've improved performance by swapping the hash table to
    util/hash_table.h, just do it once and for all.
    
    This just rebases the old hash table API on top of util/, for minimal
    diff.  Cleaning things up is left for later, particularly because I want
    to fix up the new hash table API a little bit.
    
    v2: Add UNUSED to the now-unused parameter.
    
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>

:040000 040000 db3a1af31820d5ebf2dcb72163446e8708a29613 7e66c80c7f70a38c534a01fb04b8b8dba08081e0 M	src
bisect run success
Comment 1 Mark Janes 2016-08-12 18:29:34 UTC

*** This bug has been marked as a duplicate of bug 97309 ***

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.