[Mesa-dev] [Bug 67411] New: lp_bld_conv.c:757:lp_build_conv: Assertion `dst_type.sign || dst_type.width < 32' failed.
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Sat Jul 27 12:41:41 PDT 2013
https://bugs.freedesktop.org/show_bug.cgi?id=67411
Priority: medium
Bug ID: 67411
Keywords: have-backtrace, regression
CC: sroland at vmware.com
Assignee: mesa-dev at lists.freedesktop.org
Summary: lp_bld_conv.c:757:lp_build_conv: Assertion
`dst_type.sign || dst_type.width < 32' failed.
Severity: critical
Classification: Unclassified
OS: All
Reporter: vlee at freedesktop.org
Hardware: x86-64 (AMD64)
Status: NEW
Version: git
Component: Mesa core
Product: Mesa
mesa: 803f755edeabd1b0af3d8f4ebf2005333e152ad4 (master)
Run lp_test_conv unit test.
Program received signal SIGTRAP, Trace/breakpoint trap.
0x0000000100004451 in _debug_assert_fail (expr=0x1009c09b4 "dst_type.sign ||
dst_type.width < 32", file=0x1009c085b
"src/gallium/auxiliary/gallivm/lp_bld_conv.c", line=757, function=0x1009c08fd
"lp_build_conv") at src/gallium/auxiliary/util/u_debug.c:278
278 os_abort();
(gdb) bt
#0 0x0000000100004451 in _debug_assert_fail (expr=0x1009c09b4 "dst_type.sign
|| dst_type.width < 32", file=0x1009c085b
"src/gallium/auxiliary/gallivm/lp_bld_conv.c", line=757, function=0x1009c08fd
"lp_build_conv") at src/gallium/auxiliary/util/u_debug.c:278
#1 0x00000001000818f6 in lp_build_conv (gallivm=0x100f03eb0,
src_type={floating = 1, fixed = 0, sign = 1, norm = 0, width = 32, length = 4},
dst_type={floating = 0, fixed = 1, sign = 0, norm = 0, width = 32, length = 4},
src=0x7fff5fbfc4c0, num_srcs=1, dst=0x7fff5fbfc3c0, num_dsts=1) at
src/gallium/auxiliary/gallivm/lp_bld_conv.c:757
#2 0x0000000100001efe in add_conv_test (gallivm=0x100f03eb0,
src_type={floating = 1, fixed = 0, sign = 1, norm = 0, width = 32, length = 4},
num_srcs=1, dst_type={floating = 0, fixed = 1, sign = 0, norm = 0, width = 32,
length = 4}, num_dsts=1) at src/gallium/drivers/llvmpipe/lp_test_conv.c:135
#3 0x000000010000120c in test_one (verbose=0, fp=0x0, src_type={floating = 1,
fixed = 0, sign = 1, norm = 0, width = 32, length = 4}, dst_type={floating = 0,
fixed = 1, sign = 0, norm = 0, width = 32, length = 4}) at
src/gallium/drivers/llvmpipe/lp_test_conv.c:216
#4 0x0000000100001c13 in test_some (verbose=0, fp=0x0, n=1000) at
src/gallium/drivers/llvmpipe/lp_test_conv.c:431
#5 0x00000001000036ab in main (argc=1, argv=0x7fff5fbff540) at
src/gallium/drivers/llvmpipe/lp_test_main.c:411
Current language: auto; currently minimal
(gdb) frame 1
#1 0x00000001000818f6 in lp_build_conv (gallivm=0x100f03eb0,
src_type={floating = 1, fixed = 0, sign = 1, norm = 0, width = 32, length = 4},
dst_type={floating = 0, fixed = 1, sign = 0, norm = 0, width = 32, length = 4},
src=0x7fff5fbfc4c0, num_srcs=1, dst=0x7fff5fbfc3c0, num_dsts=1) at
src/gallium/auxiliary/gallivm/lp_bld_conv.c:757
757 assert(dst_type.sign || dst_type.width < 32);
(gdb) print dst_type
$1 = {
floating = 0,
fixed = 1,
sign = 0,
norm = 0,
width = 32,
length = 4
}
(gdb) print dst_type
$2 = {
floating = 0,
fixed = 1,
sign = 0,
norm = 0,
width = 32,
length = 4
}
8c3d3622d9ce2fd2a8f46084ab8153d708fa5b09 is the first bad commit
commit 8c3d3622d9ce2fd2a8f46084ab8153d708fa5b09
Author: Roland Scheidegger <sroland at vmware.com>
Date: Sat Jul 27 03:53:00 2013 +0200
gallivm: fix float->SNORM conversion
Just like the UNORM case we need to use round to nearest, not trunc.
(There's also another problem, we're using the formula for SNORM->float
which will produce a value below -1.0 for the most negative value which
according to both OpenGL and d3d10 would need clamping. However, no actual
failures have been observed due to that hence keep cheating on that.)
Reviewed-by: Jose Fonseca <jfonseca at vmware.com>
:040000 040000 d0b0cbcbcf8f82cc2e0e51e51124a6068114feac
3273dc6ce19e22a8bf7e21dc7534a36c95c4f96d M src
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20130727/83fb0e04/attachment.html>
More information about the mesa-dev
mailing list