HLSL: phase 2b: add l-value operator[] for RWTexture/RWBuffer
authorsteve-lunarg <steve_gh@khasekhemwy.net>
Sat, 8 Oct 2016 01:35:40 +0000 (19:35 -0600)
committersteve-lunarg <steve_gh@khasekhemwy.net>
Wed, 12 Oct 2016 18:39:44 +0000 (12:39 -0600)
commit90707966eae3622d7d87d67a3cf8f163bd81320d
tree5c7e699f1c0e162802a956a7f522780d8bf73bc8
parent6b43d274e7899a7bbe80831eab96ef0d387dea91
HLSL: phase 2b: add l-value operator[] for RWTexture/RWBuffer

This commit adds l-value support for RW texture and buffer objects.
Supported are:

- pre and post inc/decrement
- function out parameters
- op-assignments, such as *=, +-, etc.
- result values from op-assignments.  e.g, val=(MyRwTex[loc] *= 2);

Not supported are:
- Function inout parameters
- multiple post-inc/decrement operators.  E.g, MyRWTex[loc]++++;
Test/baseResults/hlsl.rw.bracket.frag.out
Test/hlsl.rw.bracket.frag
glslang/MachineIndependent/Intermediate.cpp
hlsl/hlslGrammar.cpp
hlsl/hlslParseHelper.cpp
hlsl/hlslParseHelper.h