[Bug 75224] New: GLSL: vectorize optimization goes wrong on dot products
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Wed Feb 19 11:01:49 PST 2014
https://bugs.freedesktop.org/show_bug.cgi?id=75224
Priority: medium
Bug ID: 75224
Assignee: idr at freedesktop.org
Summary: GLSL: vectorize optimization goes wrong on dot
products
QA Contact: intel-3d-bugs at lists.freedesktop.org
Severity: normal
Classification: Unclassified
OS: All
Reporter: aras at unity3d.com
Hardware: All
Status: NEW
Version: git
Component: glsl-compiler
Product: Mesa
"Vectorize multiple scalar assignments" optimization (added in 4bd6e0d7c69 on
master) goes wrong on dot products.
For example, on a fragment shader like this:
varying vec3 inA;
varying vec2 inB;
void main()
{
vec2 v;
v.x = dot(inA.xy, inB);
v.y = dot(inA.yz, inB);
gl_FragColor = vec4(v.x, v.y, 0.0, 1.0);
}
It produces two problems:
1) tries to vectorize both dots into a v=dot(inA.xy,inB), which is different
result.
2) in the result it ends up with an expression node of vec2 type, but a
ir_binop_dot operation. asserts in ir_validate in debug build.
It feels like these kinds of "horizontal" operations (probably only dot?)
shouldn't be attempted to vectorize.
--
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20140219/e8925b25/attachment.html>
More information about the intel-3d-bugs
mailing list