OSDN Git Service

Fix the write mask of indirect struct accesses.
authorNicolas Capens <capn@google.com>
Fri, 17 Oct 2014 09:13:46 +0000 (05:13 -0400)
committerNicolas Capens <nicolascapens@google.com>
Fri, 17 Oct 2014 14:46:52 +0000 (14:46 +0000)
BUG=17987645

Change-Id: Ie33767573f0994635343b0d0f441c3ebb2462881
Reviewed-on: https://swiftshader-review.googlesource.com/1210
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
src/GLES2/compiler/OutputASM.cpp

index 9804781..5ddaec4 100644 (file)
@@ -284,8 +284,8 @@ namespace sh
                                        for(int index = 0; index < result->totalRegisterCount(); index++)\r
                                        {\r
                                                Instruction *mov = emit(sw::Shader::OPCODE_MOV, result, left);\r
-\r
                                                mov->dst.index += index;\r
+                                               mov->dst.mask = writeMask(result, index);\r
                                                argument(mov->src[0], left, index);\r
 \r
                                                if(left->totalRegisterCount() > 1)\r