<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 --- - [llvmpipe] piglit fs-struct-pad regression"
href="https://bugs.freedesktop.org/show_bug.cgi?id=80835">80835</a>
</td>
</tr>
<tr>
<th>Keywords</th>
<td>regression
</td>
</tr>
<tr>
<th>CC</th>
<td>brianp@vmware.com, sroland@vmware.com
</td>
</tr>
<tr>
<th>Assignee</th>
<td>mesa-dev@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Summary</th>
<td>[llvmpipe] piglit fs-struct-pad regression
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux (All)
</td>
</tr>
<tr>
<th>Reporter</th>
<td>vlee@freedesktop.org
</td>
</tr>
<tr>
<th>Hardware</th>
<td>x86-64 (AMD64)
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Version</th>
<td>git
</td>
</tr>
<tr>
<th>Component</th>
<td>Mesa core
</td>
</tr>
<tr>
<th>Product</th>
<td>Mesa
</td>
</tr></table>
<p>
<div>
<pre>mesa: 6ded75ed08aed8a88b638c664efbfe14e0476f37 (master 10.3.0-devel)
$ ./bin/shader_runner
tests/spec/glsl-1.40/uniform_buffer/fs-struct-pad.shader_test -auto
src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:306:lp_build_emit_fetch: Assertion
`reg->Register.Index <= bld_base->info->file_max[reg->Register.File]' failed.
(gdb) bt
#0 0x00007f541b9af6c8 in _debug_assert_fail (expr=0x7f541c540978
"reg->Register.Index <= bld_base->info->file_max[reg->Register.File]",
file=0x7f541c540810 "src/gallium/auxiliary/gallivm/lp_bld_tgsi.c",
line=306, function=0x7f541c540b00 <__func__.10370> "lp_build_emit_fetch")
at src/gallium/auxiliary/util/u_debug.c:309
#1 0x00007f541ba7364a in lp_build_emit_fetch (bld_base=0x7fff17f0c3c0,
inst=0x15aaab0, src_op=0, chan_index=2) at
src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:306
#2 0x00007f541ba73082 in lp_build_fetch_args (bld_base=0x7fff17f0c3c0,
emit_data=0x7fff17f0c1e0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:177
#3 0x00007f541ba73399 in lp_build_tgsi_inst_llvm (bld_base=0x7fff17f0c3c0,
inst=0x15aaab0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:249
#4 0x00007f541ba73c80 in lp_build_tgsi_llvm (bld_base=0x7fff17f0c3c0,
tokens=0x15439d0) at src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:476
#5 0x00007f541ba3a251 in lp_build_tgsi_soa (gallivm=0x1544be0,
tokens=0x15439d0, type=..., mask=0x7fff17f11fe0, consts_ptr=0x15a80f8,
const_sizes_ptr=0x15a81c8,
system_values=0x7fff17f11fc0, inputs=0x7fff17f13bb0,
outputs=0x7fff17f120a0, sampler=0x15a18c0, info=0x1547290, gs_iface=0x0)
at src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c:3788
#6 0x00007f541b5dd296 in generate_fs_loop (gallivm=0x1544be0,
shader=0x1547070, key=0x1549c60, builder=0x1533cf0, type=...,
context_ptr=0x15a0f90, num_loop=0x15a15c0,
interp=0x7fff17f12e80, sampler=0x15a18c0, mask_store=0x15a25b8,
out_color=0x7fff17f12980, depth_ptr=0x15a1210, depth_stride=0x15a1350,
facing=0x15a1080,
thread_data_ptr=0x15a12b0) at
src/gallium/drivers/llvmpipe/lp_state_fs.c:417
#7 0x00007f541b5e36f2 in generate_fragment (lp=0x1451770, shader=0x1547070,
variant=0x1549c60, partial_mask=1) at
src/gallium/drivers/llvmpipe/lp_state_fs.c:2363
#8 0x00007f541b5e46e5 in generate_variant (lp=0x1451770, shader=0x1547070,
key=0x7fff17f14150) at src/gallium/drivers/llvmpipe/lp_state_fs.c:2615
#9 0x00007f541b5e5d28 in llvmpipe_update_fs (lp=0x1451770) at
src/gallium/drivers/llvmpipe/lp_state_fs.c:3166
#10 0x00007f541b5dbb12 in llvmpipe_update_derived (llvmpipe=0x1451770) at
src/gallium/drivers/llvmpipe/lp_state_derived.c:186
#11 0x00007f541b5b61f0 in llvmpipe_draw_vbo (pipe=0x1451770,
info=0x7fff17f14470) at src/gallium/drivers/llvmpipe/lp_draw_arrays.c:70
#12 0x00007f541b9590b6 in cso_draw_vbo (cso=0x14e86b0, info=0x7fff17f14470) at
src/gallium/auxiliary/cso_cache/cso_context.c:1428
#13 0x00007f541b7616c6 in st_draw_vbo (ctx=0x7f541f304010,
prims=0x7fff17f14550, nr_prims=1, ib=0x0, index_bounds_valid=1 '\001',
min_index=0, max_index=3,
tfb_vertcount=0x0, indirect=0x0) at src/mesa/state_tracker/st_draw.c:285
#14 0x00007f541b839494 in vbo_draw_arrays (ctx=0x7f541f304010, mode=5, start=0,
count=4, numInstances=1, baseInstance=0) at src/mesa/vbo/vbo_exec_array.c:667
#15 0x00007f541b839edf in vbo_exec_DrawArrays (mode=5, start=0, count=4) at
src/mesa/vbo/vbo_exec_array.c:819
#16 0x00007f541ee13900 in stub_glDrawArrays (mode=5, first=0, count=4) at
piglit/tests/util/piglit-dispatch-gen.c:10435
#17 0x00007f541ee70891 in piglit_draw_rect_from_arrays (verts=0x7fff17f14640,
tex=0x0) at piglit/tests/util/piglit-util-gl-common.c:698
#18 0x00007f541ee709ee in piglit_draw_rect (x=-1, y=-1, w=2, h=2) at
piglit/tests/util/piglit-util-gl-common.c:741
#19 0x000000000040a0d1 in piglit_display () at
piglit/tests/shaders/shader_runner.c:2104
#20 0x00007f541ee88dc6 in display () at
piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:60
#21 0x00007f541e5a0244 in fghRedrawWindow (window=0x144dcb0) at
freeglut_main.c:231
#22 fghcbDisplayWindow (window=0x144dcb0, enumerator=0x7fff17f148e0) at
freeglut_main.c:248
#23 0x00007f541e5a3aa9 in fgEnumWindows
(enumCallback=enumCallback@entry=0x7f541e5a01d0 <fghcbDisplayWindow>,
enumerator=enumerator@entry=0x7fff17f148e0)
at freeglut_structure.c:396
#24 0x00007f541e5a07fd in fghDisplayAll () at freeglut_main.c:271
#25 glutMainLoopEvent () at freeglut_main.c:1523
#26 0x00007f541e5a0ffd in glutMainLoop () at freeglut_main.c:1571
#27 0x00007f541ee89102 in run_test (gl_fw=0x7f541f108060 <glut_fw>, argc=2,
argv=0x7fff17f14cb8)
at piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:167
#28 0x00007f541ee71178 in piglit_gl_test_run (argc=2, argv=0x7fff17f14cb8,
config=0x7fff17f14b80) at piglit/tests/util/piglit-framework-gl.c:151
#29 0x0000000000404e93 in main (argc=2, argv=0x7fff17f14cb8) at
piglit/tests/shaders/shader_runner.c:60
(gdb) frame 1
#1 0x00007f541ba7364a in lp_build_emit_fetch (bld_base=0x7fff17f0c3c0,
inst=0x15aaab0, src_op=0, chan_index=2) at
src/gallium/auxiliary/gallivm/lp_bld_tgsi.c:306
306 assert(reg->Register.Index <=
bld_base->info->file_max[reg->Register.File]);
(gdb) print reg->Register.Index
$1 = 2
(gdb) print bld_base->info->file_max[reg->Register.File]
$2 = 1
f4b0ab7afd83c811329211eae8167c9bf238870c is the first bad commit
commit f4b0ab7afd83c811329211eae8167c9bf238870c
Author: Brian Paul <<a href="mailto:brianp@vmware.com">brianp@vmware.com</a>>
Date: Tue Jul 1 08:17:09 2014 -0600
st/mesa: fix incorrect size of UBO declarations
UniformBufferSize is in bytes so we need to divide by 16 to get the
number of constant buffer slots. Also, the ureg_DECL_constant2D()
function takes first..last parameters so we need to subtract one
for the last value.
Reviewed-by: Roland Scheidegger <<a href="mailto:sroland@vmware.com">sroland@vmware.com</a>>
:040000 040000 bbe2c6f0c62e19b140c09df1f74a44e77d7c7bf9
db6b7eb1f47bec99cbde4ee9d5af8f266cda0ed1 M src
bisect run success</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>