Oops sorry for that. Looks like I changed the type of a constant accidentally - I probably copied that bit from the original code instead, which might have had it wrong at that time without consequences... Should hopefully be fixed now.
Roland Am 06.12.2016 um 08:51 schrieb Michel Dänzer: > On 04/12/16 01:09 AM, srol...@vmware.com wrote: >> From: Roland Scheidegger <srol...@vmware.com> >> >> Trivial, this just resurrects the code which was there once upon a time >> (the code can't lower instructions generated in the lowering pass there, >> and even if it could it would probably be suboptimal). >> This fixes piglit mesa_shader_integer_functions fs-ldexp.shader_test and >> vs-ldexp.shader_test with llvmpipe. > > ... and in exchange broke the same tests with radeonsi. :} > > shader_runner: ../../../src/compiler/glsl/ir_validate.cpp:662: virtual > ir_visitor_status {anonymous}::ir_validate::visit_leave(ir_expression*): > Assertion `ir->operands[3]->type == ir->type' failed. > > Thread 1 "shader_runner" received signal SIGABRT, Aborted. > __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58 > 58 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. > (gdb) bt > #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58 > #1 0x00007ffff4b9940a in __GI_abort () at abort.c:89 > #2 0x00007ffff4b90e47 in __assert_fail_base (fmt=<optimized out>, > assertion=assertion@entry=0x7ffff0fe7208 "ir->operands[3]->type == ir->type", > file=file@entry=0x7ffff0fe6618 "../../../src/compiler/glsl/ir_validate.cpp", > line=line@entry=662, > function=function@entry=0x7ffff0fe7e00 <(anonymous > namespace)::ir_validate::visit_leave(ir_expression*)::__PRETTY_FUNCTION__> > "virtual ir_visitor_status > {anonymous}::ir_validate::visit_leave(ir_expression*)") at assert.c:92 > #3 0x00007ffff4b90ef2 in __GI___assert_fail > (assertion=assertion@entry=0x7ffff0fe7208 "ir->operands[3]->type == > ir->type", file=file@entry=0x7ffff0fe6618 > "../../../src/compiler/glsl/ir_validate.cpp", line=line@entry=662, > function=function@entry=0x7ffff0fe7e00 <(anonymous > namespace)::ir_validate::visit_leave(ir_expression*)::__PRETTY_FUNCTION__> > "virtual ir_visitor_status > {anonymous}::ir_validate::visit_leave(ir_expression*)") at assert.c:101 > #4 0x00007ffff0a42e21 in (anonymous namespace)::ir_validate::visit_leave > (this=<optimized out>, ir=<optimized out>) at > ../../../src/compiler/glsl/ir_validate.cpp:662 > #5 0x00007ffff0a3e2bb in ir_expression::accept (this=0x555555958340, > v=0x7fffffffd120) at ../../../src/compiler/glsl/ir_hv_accept.cpp:141 > #6 0x00007ffff0a3e2bb in ir_expression::accept (this=0x5555559583d0, > v=0x7fffffffd120) at ../../../src/compiler/glsl/ir_hv_accept.cpp:141 > #7 0x00007ffff0a3e2bb in ir_expression::accept (this=0x5555559585c0, > v=0x7fffffffd120) at ../../../src/compiler/glsl/ir_hv_accept.cpp:141 > #8 0x00007ffff0a3e5ef in ir_assignment::accept (this=0x55555594b9f0, > v=0x7fffffffd120) at ../../../src/compiler/glsl/ir_hv_accept.cpp:309 > #9 0x00007ffff0a3e11d in visit_list_elements (statement_list=true, > l=0x555555951410, v=0x7fffffffd120) at > ../../../src/compiler/glsl/ir_hv_accept.cpp:55 > #10 ir_function_signature::accept (this=0x5555559513c0, v=0x7fffffffd120) at > ../../../src/compiler/glsl/ir_hv_accept.cpp:115 > #11 0x00007ffff0a3e209 in visit_list_elements (statement_list=false, > l=0x555555951348, v=0x7fffffffd120) at > ../../../src/compiler/glsl/ir_hv_accept.cpp:55 > #12 ir_function::accept (this=0x555555951320, v=0x7fffffffd120) at > ../../../src/compiler/glsl/ir_hv_accept.cpp:127 > #13 0x00007ffff0a3dede in visit_list_elements (v=v@entry=0x7fffffffd120, > l=l@entry=0x555555953180, statement_list=statement_list@entry=true) at > ../../../src/compiler/glsl/ir_hv_accept.cpp:55 > #14 0x00007ffff0a3dd1f in ir_hierarchical_visitor::run > (this=this@entry=0x7fffffffd120, > instructions=instructions@entry=0x555555953180) at > ../../../src/compiler/glsl/ir_hierarchical_visitor.cpp:364 > #15 0x00007ffff0a45c7a in validate_ir_tree > (instructions=instructions@entry=0x555555953180) at > ../../../src/compiler/glsl/ir_validate.cpp:932 > #16 0x00007ffff0960da9 in st_link_shader (ctx=0x5555559014c0, > prog=0x555555953920) at > ../../../src/mesa/state_tracker/st_glsl_to_tgsi.cpp:6879 > #17 0x00007ffff098cb15 in _mesa_glsl_link_shader > (ctx=ctx@entry=0x5555559014c0, prog=prog@entry=0x555555953920) at > ../../../src/mesa/program/ir_to_mesa.cpp:3066 > #18 0x00007ffff082c60d in _mesa_link_program (ctx=0x5555559014c0, > shProg=0x555555953920) at ../../../src/mesa/main/shaderapi.c:1089 > #19 0x00007ffff7ac8795 in stub_glLinkProgram (program=3) at > /home/daenzer/src/piglit-git/piglit/tests/util/piglit-dispatch-gen.c:33005 > #20 0x000055555555ce9c in link_and_use_shaders () at > /home/daenzer/src/piglit-git/piglit/tests/shaders/shader_runner.c:1040 > #21 0x00005555555656fb in init_test (file=0x7fffffffe9ec > "/home/daenzer/src/piglit-git/piglit/tests/spec/mesa_shader_integer_functions/execution/built-in-functions/fs-ldexp.shader_test") > at /home/daenzer/src/piglit-git/piglit/tests/shaders/shader_runner.c:3686 > #22 0x0000555555566341 in piglit_init (argc=2, argv=0x7fffffffe6b8) at > /home/daenzer/src/piglit-git/piglit/tests/shaders/shader_runner.c:4012 > #23 0x00007ffff7b39361 in run_test (gl_fw=0x555555780c20, argc=2, > argv=0x7fffffffe6b8) at > /home/daenzer/src/piglit-git/piglit/tests/util/piglit-framework-gl/piglit_winsys_framework.c:73 > #24 0x00007ffff7b1de9c in piglit_gl_test_run (argc=2, argv=0x7fffffffe6b8, > config=0x7fffffffe580) at > /home/daenzer/src/piglit-git/piglit/tests/util/piglit-framework-gl.c:203 > #25 0x000055555555b04c in main (argc=2, argv=0x7fffffffe6b8) at > /home/daenzer/src/piglit-git/piglit/tests/shaders/shader_runner.c:60 > > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev