yangqiaosheng / angleproject

Automatically exported from code.google.com/p/angleproject
Other
0 stars 0 forks source link

Matrix compound multiplication is broken in HLSL translator #938

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Run dEQP-GLES3.functional.shaders.matrix.mul_assign.* or the test introduced 
in https://github.com/KhronosGroup/WebGL/pull/872

What is the expected output? What do you see instead?
Expected: tests pass
Actual: tests fail

This is because the matrices are not properly transposed when using the *= 
operator, unlike when using the * operator.

Original issue reported on code.google.com by oetu...@nvidia.com on 6 Mar 2015 at 10:06

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Olli Etuaho <oetuaho@nvidia.com>
Commit : fc7fab723533af9121f5ba8dec5c31cf5cc00acb

Code-Review  0 : Nicolas Capens, Olli Etuaho
Code-Review  +1: Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Nicolas Capens, Zhenyao Mo
Verified     +1: Olli Etuaho
Commit Queue   : Chumped
Change-Id      : I4c5159de0727afb4ee2831586f04fa817619de7a
Reviewed-at    : https://chromium-review.googlesource.com/256366

Fix matrix compound multiplication

Matrix compound multiplication was lacking transposes. Add them so that
results match normal multiplication.

BUG=angleproject:938
TEST=dEQP-GLES3.functional.shaders.matrix.mul_assign.*

src/compiler/translator/OutputHLSL.cpp

Original comment by bugdroid1@chromium.org on 9 Mar 2015 at 8:28

GoogleCodeExporter commented 9 years ago

Original comment by oetu...@nvidia.com on 9 Mar 2015 at 9:05