HLSL: fix defect in EOpMethodSampleCmp* texture decomposition
authorsteve-lunarg <steve_gh@khasekhemwy.net>
Thu, 20 Oct 2016 20:50:12 +0000 (14:50 -0600)
committersteve-lunarg <steve_gh@khasekhemwy.net>
Thu, 20 Oct 2016 20:50:12 +0000 (14:50 -0600)
commit6b596682c9687333aed894c9fbcb56591e5536c4
treec00c0db665055643a6201f48b6bc367c729f6278
parent5d45eadedc37141d27100ce312af7125ec7058ab
HLSL: fix defect in EOpMethodSampleCmp* texture decomposition

HLSL holds the compare value in a separate intrinsic arg, but the AST wants
a vector including the cmp val, except in the 4-dim coord case, where it
doesn't fit and is in fact a separate AST parameter.  This is awkward but
necessary, given AST semantics.  In the process, a new vector is constructed
for the combined result, but this vector was not being given the correct
TType, so was causing some downstream troubles.

Now it is.  A similar defect existed in OpTextureBias, and has also been
fixed.
Test/baseResults/hlsl.samplecmp.array.dx10.frag.out
Test/baseResults/hlsl.samplecmp.basic.dx10.frag.out
Test/baseResults/hlsl.samplecmp.offset.dx10.frag.out
Test/baseResults/hlsl.samplecmp.offsetarray.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.array.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.basic.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.offset.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.offsetarray.dx10.frag.out
hlsl/hlslParseHelper.cpp