<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Unreal Engine 4 demos fail GLSL compiler assertion"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=80880">80880</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>idr@freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Unreal Engine 4 demos fail GLSL compiler assertion
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>intel-3d-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>michel@daenzer.net
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>git
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>glsl-compiler
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Trying to run any of the Unreal Engine 4 demos from
<a href="https://wiki.unrealengine.com/Linux_Demos">https://wiki.unrealengine.com/Linux_Demos</a> fails like this:

TappyChicken: ../../../src/glsl/ir_constant_expression.cpp:519: virtual
ir_constant* ir_expression::constant_expression_value(hash_table*): Assertion
`op[0]->type->base_type == op[1]->type->base_type' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffed703700 (LWP 3105)]
0x00007ffff69c6407 in __GI_raise (sig=sig@entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
56    ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007ffff69c6407 in __GI_raise (sig=sig@entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007ffff69c77e8 in __GI_abort () at abort.c:89
#2  0x00007ffff69bf516 in __assert_fail_base (fmt=0x7ffff6af5d38 "%s%s%s:%u:
%s%sAssertion `%s' failed.\n%n", 
    assertion=assertion@entry=0x7ffff2299bc8 "op[0]->type->base_type ==
op[1]->type->base_type", file=file@entry=0x7ffff2299b98
"../../../src/glsl/ir_constant_expression.cpp", 
    line=line@entry=519, 
    function=function@entry=0x7ffff229a340
<ir_expression::constant_expression_value(hash_table*)::__PRETTY_FUNCTION__>
"virtual ir_constant* ir_expression::constant_expression_value(hash_table*)")
at assert.c:92
#3  0x00007ffff69bf5c2 in __GI___assert_fail (assertion=0x7ffff2299bc8
"op[0]->type->base_type == op[1]->type->base_type", file=0x7ffff2299b98
"../../../src/glsl/ir_constant_expression.cpp", 
    line=519, function=0x7ffff229a340
<ir_expression::constant_expression_value(hash_table*)::__PRETTY_FUNCTION__>
"virtual ir_constant* ir_expression::constant_expression_value(hash_table*)")
    at assert.c:101
#4  0x00007ffff1fa8798 in ir_expression::constant_expression_value
(this=0x7fffe95c8530, variable_context=<optimized out>) at
../../../src/glsl/ir_constant_expression.cpp:519
#5  0x00007ffff1fa50c4 in ir_expression::constant_expression_value
(this=0x7fffe95c85c0, variable_context=0x0) at
../../../src/glsl/ir_constant_expression.cpp:503
#6  0x00007ffff1fa50c4 in ir_expression::constant_expression_value
(this=0x7fffe95c8650, variable_context=0x0) at
../../../src/glsl/ir_constant_expression.cpp:503
#7  0x00007ffff1fbc082 in calculate_iterations (from=from@entry=0x7fffe9191910,
to=to@entry=0x7fffe93fa640, increment=0x7fffe920a380,
op=op@entry=ir_binop_gequal)
    at ../../../src/glsl/loop_controls.cpp:140
#8  0x00007ffff1fbb4ef in (anonymous namespace)::loop_analysis::visit_leave
(this=<optimized out>, ir=0x7fffe971a3a0) at
../../../src/glsl/loop_analysis.cpp:442
#9  0x00007ffff1faa7df in visit_list_elements (v=v@entry=0x7fffed701bf0,
l=l@entry=0x7fffe944e758, statement_list=statement_list@entry=true) at
../../../src/glsl/ir_hv_accept.cpp:55
#10 0x00007ffff1faa939 in ir_function_signature::accept (this=0x7fffe944e710,
v=0x7fffed701bf0) at ../../../src/glsl/ir_hv_accept.cpp:115
#11 0x00007ffff1faa7df in visit_list_elements (v=v@entry=0x7fffed701bf0,
l=l@entry=0x7fffe97740a8, statement_list=statement_list@entry=false) at
../../../src/glsl/ir_hv_accept.cpp:55
#12 0x00007ffff1faa9a7 in ir_function::accept (this=0x7fffe9774080,
v=0x7fffed701bf0) at ../../../src/glsl/ir_hv_accept.cpp:127
#13 0x00007ffff1faa7df in visit_list_elements (v=v@entry=0x7fffed701bf0,
l=l@entry=0x7fffe917e130, statement_list=statement_list@entry=true) at
../../../src/glsl/ir_hv_accept.cpp:55
#14 0x00007ffff1faa67f in ir_hierarchical_visitor::run
(this=this@entry=0x7fffed701bf0,
instructions=instructions@entry=0x7fffe917e130) at
../../../src/glsl/ir_hierarchical_visitor.cpp:323
#15 0x00007ffff1fbbae2 in analyze_loop_variables
(instructions=instructions@entry=0x7fffe917e130) at
../../../src/glsl/loop_analysis.cpp:638
#16 0x00007ffff1f9bcf4 in do_common_optimization (ir=0x7fffe917e130,
linked=linked@entry=true,
uniform_locations_assigned=uniform_locations_assigned@entry=false, 
    options=options@entry=0x49d8758, native_integers=<optimized out>) at
../../../src/glsl/glsl_parser_extras.cpp:1574
#17 0x00007ffff1fb9480 in link_shaders (ctx=ctx@entry=0x49b7330,
prog=prog@entry=0x7fffe9511560) at ../../../src/glsl/linker.cpp:2666
#18 0x00007ffff1f33d83 in _mesa_glsl_link_shader (ctx=0x49b7330,
prog=0x7fffe9511560) at ../../../src/mesa/program/ir_to_mesa.cpp:3075
#19 0x00007ffff1e752eb in link_program (ctx=0x49b7330, program=<optimized out>)
at ../../../src/mesa/main/shaderapi.c:915

P.S. Since I'm using a Gallium driver, I have to revert commit
f4b0ab7afd83c811329211eae8167c9bf238870c, or I run into another assertion
failure first. This is being discussed on the mesa-dev mailing list.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>