mesa: 63e79a8a777b36ecb30a1f6900e6b638cb32fc5f (master 17.3.0-devel) $ ./bin/glean -t fragProg1 --quick src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:348:lp_build_emit_fetch_src: Assertion `0 && "invalid src register in emit_fetch()"' failed. Trace/breakpoint trap (core dumped) (gdb) bt #0 0x00007fcc40d1aa86 in _debug_assert_fail (expr=0x7fcc40f135f0 "0 && \"invalid src register in emit_fetch()\"", file=0x7fcc40f13530 "src/gallium/auxiliary/gallivm/lp_bld_tgsi.c", line=348, function=0x7fcc40f13740 <__func__.11528> "lp_build_emit_fetch_src") at src/gallium/auxiliary/util/u_debug.c:321 #1 0x00007fcc40de93a7 in lp_build_emit_fetch_src (bld_base=0x7ffd1f320130, reg=0x562b7acea950, stype=TGSI_TYPE_FLOAT, chan_index=0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:348 #2 0x00007fcc40de9592 in lp_build_emit_fetch (bld_base=0x7ffd1f320130, inst=0x562b7acea900, src_op=2, chan_index=0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:425 #3 0x00007fcc40de8c65 in lp_build_fetch_args (bld_base=0x7ffd1f320130, emit_data=0x7ffd1f31ff10) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:180 #4 0x00007fcc40de9073 in lp_build_tgsi_inst_llvm (bld_base=0x7ffd1f320130, inst=0x562b7acea900) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:287 #5 0x00007fcc40de99eb in lp_build_tgsi_llvm (bld_base=0x7ffd1f320130, tokens=0x562b7acb3de0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:530 #6 0x00007fcc40db7107 in lp_build_tgsi_soa (gallivm=0x562b7acd2e50, tokens=0x562b7acb3de0, type=..., mask=0x7ffd1f326200, consts_ptr=0x562b7ac6de78, const_sizes_ptr=0x562b7ac6c7c8, system_values=0x7ffd1f326220, inputs=0x7ffd1f329480, outputs=0x7ffd1f3262b0, context_ptr=0x562b7acb2130, thread_data_ptr=0x562b7acc2cc0, sampler=0x562b7ac6bb20, info=0x562b7acf8328, gs_iface=0x0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c:3905 #7 0x00007fcc406f6545 in generate_fs_loop (gallivm=0x562b7acd2e50, shader=0x562b7acf8200, key=0x562b7ac79300, builder=0x562b7ac81720, type=..., context_ptr=0x562b7acb2130, num_loop=0x562b7ac6bdb0, interp=0x7ffd1f327550, sampler=0x562b7ac6bb20, mask_store=0x562b7acac3c8, out_color=0x7ffd1f326f10, depth_ptr=0x562b7ab14050, depth_stride=0x562b7ab13f40, facing=0x562b7acc28e0, thread_data_ptr=0x562b7acc2cc0) at src/gallium/drivers/llvmpipe/lp_state_fs.c:476 #8 0x00007fcc406fd61e in generate_fragment (lp=0x562b7a8c02b0, shader=0x562b7acf8200, variant=0x562b7ac79300, partial_mask=1) at src/gallium/drivers/llvmpipe/lp_state_fs.c:2584 #9 0x00007fcc406fe606 in generate_variant (lp=0x562b7a8c02b0, shader=0x562b7acf8200, key=0x7ffd1f32a000) at src/gallium/drivers/llvmpipe/lp_state_fs.c:2838 #10 0x00007fcc406ffce3 in llvmpipe_update_fs (lp=0x562b7a8c02b0) at src/gallium/drivers/llvmpipe/lp_state_fs.c:3405 #11 0x00007fcc406f4a41 in llvmpipe_update_derived (llvmpipe=0x562b7a8c02b0) at src/gallium/drivers/llvmpipe/lp_state_derived.c:210 #12 0x00007fcc406cf02c in llvmpipe_draw_vbo (pipe=0x562b7a8c02b0, info=0x7ffd1f32a320) at src/gallium/drivers/llvmpipe/lp_draw_arrays.c:70 #13 0x00007fcc40cac11d in cso_draw_vbo (cso=0x562b7aa81170, info=0x7ffd1f32a320) at src/gallium/auxiliary/cso_cache/cso_context.c:1684 #14 0x00007fcc4096332c in st_draw_vbo (ctx=0x7fcc418d5010, prims=0x562b7aa6c9b8, nr_prims=1, ib=0x0, index_bounds_valid=1 '\001', min_index=0, max_index=3, tfb_vertcount=0x0, stream=0, indirect=0x0) at src/mesa/state_tracker/st_draw.c:222 #15 0x00007fcc4091b651 in vbo_exec_vtx_flush (exec=0x562b7aa6c1b8, keepUnmapped=1 '\001') at src/mesa/vbo/vbo_exec_draw.c:435 #16 0x00007fcc4091776a in vbo_exec_FlushVertices_internal (exec=0x562b7aa6c1b8, unmap=1 '\001') at src/mesa/vbo/vbo_exec_api.c:637 #17 0x00007fcc40919645 in vbo_exec_FlushVertices (ctx=0x7fcc418d5010, flags=1) at src/mesa/vbo/vbo_exec_api.c:1294 #18 0x00007fcc40883878 in read_pixels (no_error=false, pixels=0x7ffd1f32a590, bufSize=2147483647, type=5126, format=6408, height=1, width=1, y=50, x=50) at src/mesa/main/readpix.c:997 #19 _mesa_ReadnPixelsARB (x=50, y=50, width=1, height=1, format=6408, type=5126, bufSize=2147483647, pixels=0x7ffd1f32a590) at src/mesa/main/readpix.c:1141 #20 0x00007fcc40883f5f in _mesa_ReadPixels (x=50, y=50, width=1, height=1, format=6408, type=5126, pixels=0x7ffd1f32a590) at src/mesa/main/readpix.c:1156 #21 0x0000562b79a59380 in GLEAN::FragmentProgramTest::testProgram (this=0x562b79cb6520 <GLEAN::fragmentProgramTest>, p=...) at piglit/tests/glean/tfragprog1.cpp:1055 #22 0x0000562b79a5957d in GLEAN::FragmentProgramTest::runOne (this=0x562b79cb6520 <GLEAN::fragmentProgramTest>, r=..., w=...) at piglit/tests/glean/tfragprog1.cpp:1101 #23 0x0000562b79a4ec70 in GLEAN::BaseTest<GLEAN::MultiTestResult>::run (this=0x562b79cb6520 <GLEAN::fragmentProgramTest>, environment=...) at piglit/tests/glean/tbase.h:331 #24 0x0000562b79a463fc in main (argc=4, argv=0x7ffd1f32aa18) at piglit/tests/glean/main.cpp:125 (gdb) frame 1 #1 0x00007fcc40de93a7 in lp_build_emit_fetch_src (bld_base=0x7ffd1f320130, reg=0x562b7acea950, stype=TGSI_TYPE_FLOAT, chan_index=0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:348 348 assert(0 && "invalid src register in emit_fetch()"); (gdb) l 343 344 if (bld_base->emit_fetch_funcs[reg->Register.File]) { 345 res = bld_base->emit_fetch_funcs[reg->Register.File](bld_base, reg, stype, 346 swizzle); 347 } else { 348 assert(0 && "invalid src register in emit_fetch()"); 349 return bld_base->base.undef; 350 } 351 352 if (reg->Register.Absolute) { 985e6b5ef91ec8de7ae5e03fcfb978ea6e8993ea is the first bad commit commit 985e6b5ef91ec8de7ae5e03fcfb978ea6e8993ea Author: Marek Olšák <marek.olsak@amd.com> Date: Sat Aug 19 22:23:08 2017 +0200 gallium: remove TGSI opcode XPD use MUL+MAD+MOV instead. Reviewed-by: Roland Scheidegger <sroland@vmware.com> :040000 040000 a1b784bead9d12d0734cbc18e25695a91aa4f096 474c3de4ca9c6c525391f91e994581b33f670132 M src bisect run success
commit 79674066b6f98be96cb63a0332ac421858544a20 Author: Marek Olšák <marek.olsak@amd.com> Date: Mon Aug 28 23:28:33 2017 +0200 st/mesa: fix XPD lowering - don't read dst Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102461 Reviewed-by: Brian Paul <brianp@vmware.com>
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.