Android NDK r20 (build 5594570)
Merge remote-tracking branch 'aosp/upstream-master' into update-shaderc

91ac4290 Merge pull request #1510 from Kangz/complete_lib
873734dd make the static_lib complete to fix the build on OSX
5ff3c3da Interfaces: Remove NV_EXTENSIONS from two more headers.
01c4076a Merge pull request #1508 from jeffbolznv/remove_ifdefs_shaderlang
27f5db05 Remove NV_EXTENSION ifdefs from ShaderLang.h
1f60c72c Interface: remove NV_EXTENSIONS from the resources header.
a4752945 Merge pull request #1506 from alelenv/master
18268c85 Merge pull request #1505 from dj2/gn_build
aac6d637 Use unsigned int instead of uint32_t
a535bc13 Fix missing case label for miss stage.
b29c58ea Review feedback
257b25c8 Add configuration.
a8453d4b SPIRV-Tools: Move to more recent (higher quality) version.
088da332 Bump revision.
dc591081 Merge pull request #1500 from KhronosGroup/turing-known-good
aedccf96 Update known-good to tools/headers for the Nvidia Turing extensions.
8751c13c Bump minor version.
5942c015 Merge pull request #1499 from chaoc/nvidia_turing
fb13a3ab update glslang test results for temporary validation fail
5b2203db Add-support-for-SPV_NV_shading_rate
b50c02ef Add-support-for-SPV_NVX_raytracing
3c366990 Add-support-for-SPV_NV_mesh_shader
3a137966 0003-Add-support-for-SPV_NV_shader_image_footprint
beae2251 Add-support-for-SPV_NV_compute_shader_derivatives
9eada4b9 Add-support-for-SPV_NV_fragment_shader_barycentric
6dd4757f Update to latest spirv.hpp header (which fixed a typo).
7105cb30 SPV: Move to latest SPIR-V header (latest NV extensions support).
d122a728 Build: Fix some warnings.
b4a598ba Bump revision.
92fab623 Merge pull request #1492 from NorbertGarnysAMD/shader_atomic_int64
dad0c1be Add GL_EXT_shader_atomic_int64
f658c303 Merge pull request #1491 from DennisOSRM/patch-1
fc89f065 Fix compiler warning emitted from GCC8
6def4375 Bump revision.
afe0c66f SPV: Fix #1487: Only declare AMD int16/half_float extensions when needed.
546b7885 Printing preprocessed shaders (not a supported path): Fix #1490: strings
1ca0f8e8 Bump version and revision.
ddfb4a80 Merge branch 'jeffbolznv-memory_scope_semantics'
36831c9b GL_KHR_memory_scope_semantics
97068d8b Merge pull request #1465 from otakuto/remove-execute-permissions
1d12970a Merge pull request #1485 from karl-lunarg/karl-lunarg-patch-1
12b99ef1 Merge pull request #1486 from mrtrizer/patch-1
949344f0 Update SpvTools.cpp
ac2e1b63 bump revision
4e11b615 SPV: Turn off the default validation done by the SPIRV-Tools optimizer.
a4dfede4 Merge pull request #1482 from KhronosGroup/validate
d5aabf34 GLSL: Remove use of __ in the implementation of keywords having __.
381dd3c0 GLSL: Remove use of __ in the implementation of keywords having __.
0cb8ad55 tooling: Fix update sources script for Python 3
c340425b SPV: Add option for controling when the SPIRV-Tools validator is used.
717c80a9 SPV: Isolate SPIRV-tools glue to its own file.
cc14f2d3 SPV: Add SPIRV-Tools validator. This needs the latest SPIR-Tools.
e7df8e0b Non-functional: Rationalize some existing use of SPIRV-Tools.
1323bf8e Merge pull request #1480 from dneto0/stringify
9fd2a8cd Use our own SPIRV-Tools message stringifier
93dbbdee Merge pull request #1474 from KhronosGroup/pure-8-16-bit-capability
09d7672d Merge pull request #1476 from greg-lunarg/kg24
1676e73d Update SPIRV-Tools known good.
31aa3d60 SPV: only declare the pure 8/16-bit capabilities when needed.
149afc39 SPV: More corrections of <id> versus "immediate" operands.
228e964b SPV: Correct SPIR-V operands for <id> versus immediate.
72f8c690 Bump version patch level.
251901ac Fix #1471: Merge shift amounts for different sets: --stb ... --std ...
ade8bbbf Fix #1393: rationalize usage, in the spirit of #1393.
ec5c1193 Bump revision.
640bd096 Fix #1468: Add command-line --entry-point support, same as existing -e.
56a75975 Fix #1469: Make it easier to copy/paste build instructions.
c4510e5e Merge pull request #1466 from Kangz/warning_fixes
242c28f2 Merge pull request #1470 from antiagainst/patch-2
fb4165b5 Appveyor CI: build artifacts for x64
e7061422 Fix -Wignored-qualifier and -Wunused-variable warnings
dae0b0a5 Add shebang
d03da06a Remove execute permissions
e0bc65b2 Merge pull request #1460 from KhronosGroup/postprocess
f04c51b3 Non-Functional: Add postprocess as more robust way to add capabilities
29619b23 Merge pull request #1459 from dgkoch/dgkoch_build_fixes4
883607d5 Fix build warnings/errors:
e99a2681 Merge pull request #1457 from KhronosGroup/parse-floats
7cdc24c0 PP: Address #1456: Strip float suffixes before using platform library.
994d4bf3 Tests: Add more string -> float tests. Related to #1456.
561a43d2 PP: floating-point parsing: more stable handling of istringstream::fail
13803b18 Bump revision.
6e382f63 Merge pull request #1455 from TiemoJung/nullpointer_crash_fix
e161cc11 GLSL: No more restrictions on (non)shadow sampler construction.
9f8cb850 Fixes a crash when in/out varying variable had no semantic name and an error was reported in ioremapper phase when the variable was rejected
62faea79 Merge pull request #1451 from KhronosGroup/shadow-forces-depth
11da9eed HLSL: Fix #1445: distance() works on scalars.
56b33196 Merge pull request #1453 from greg-lunarg/kg22
7d4c9a07 GLSL: Construct shadow texture from non-shadow sampler.
0339af3c GLSL/SPV: If a texture is used with a shadow sampler, force 'shadow'.
3f05bedd Update spirv-tools known good
fa4952c3 Merge branch 'zeux-master'
5a7321eb Merge branch 'master' of into zeux-master
81793ad2 Merge pull request #1450 from KhronosGroup/link-merge-all
b617e14a Link: Merge all the settings in TIntermediate.
5d6b5679 Merge pull request #1436 from karl-lunarg/karl-ccache
8103cb95 Merge pull request #1446 from KhronosGroup/spv-link
ebd989dd Merge pull request #1437 from mattparks/patch-2
34e56891 Merge branch 'jeffbolznv-missing_descriptor_indexing_extension'
4137241a Merge branch 'missing_descriptor_indexing_extension' of into jeffbolznv-missing_descriptor_indexing_extension
41436ad2 Link/SPV: Correct symbol IDs on merging ASTs to a single coherent space
806af25f Merge pull request #1442 from dneto0/use-forked-android-ndk-repo
c140b968 Add missing OpExtension SPV_EXT_descriptor_indexing for dynamic indexing capabilities
e7f9caea Errors and Build: Fix build warnings, which also improved error messages.
4aeca2df NDK build: Use NDK r17b and its own CMake toolchain file
b75c7065 Travis CI: Fix comments disabling code.
e5b27660 Merge pull request #1440 from dneto0/later-android
3541d8a5 Travis-CI: Use Android NDK r13b specifically
8dafeab4 Merge pull request #1438 from Think-Silicon/getUniformStages
0ea33a26 Non-functional: Retrigger bots; the previous failure looks suspicious.
cf6bd066 HLSL: Fix #1432: Globally initialize local static variables.
f556e5da Reflection exposes the Shader Stages where a Uniform is present
f9c2aeb7 Allowed debug postfix to be changed.
857f25cf Added the cmake option to disable building SPVRemapper.
64315a8a Merge pull request #1434 from antiagainst/fix-spirv-tools-header
23770b9a build: Add ccache option to CMake config
112e2858 SPIRV: Simplify matrix->matrix constructor
a2c39a29 Use public SPIRV-Tools header
cd57b4ba Merge pull request #1431 from KhronosGroup/implement-8-16-bit-storage
312dcfb0 Implement GL_EXT_shader_16bit_storage and GL_EXT_shader_8bit_storage extensions.
eefab240 Bump revision.
dccfeedf HLSL: Fix #1423: implement CalculateLevelOfDetailUnclamped().
ab8960fd Merge pull request #1416 from aejsmith/samplerless-texture-functions
513cc4cf Merge branch 'HaydnTrigg-patch-1'
c88edb13 Merge branch 'patch-1' of into HaydnTrigg-patch-1
5e701954 Merge pull request #1420 from KhronosGroup/spir-dis
e2156222 SPV: Add option to print disassembly in standard form using SPIRV-Tools.
6d61684f Bump revision.
802c62bc PP: Rationalize return values of MacroExpand.
9cc81de0 PP/HLSL: Fix #1424: support comma in nested curly braces for macro arg
e47bfaed Add support for GL_EXT_samplerless_texture_functions
e826286f Constant.cpp Floating point divide by zero
0b964b3c Merge pull request #1419 from tgjones/spirv-remap-artifact
9177e05f Include spirv-remap.exe in AppVeyor artifacts
ef1f899b Merge pull request #1413 from karl-lunarg/fix-update
fa403b96 script: Improve update sources script
16cf5a5d Merge pull request #1411 from KhronosGroup/fix-literal-warnings
866f6714 Build: Make literal casting have fewer warnings and be more consistent.
5fe506a8 Merge pull request #1409 from greg-lunarg/remap3
c6831d1e Add support for OpConstantNull and OpConstantSampler to spirv-remap
c99304c5 Bump revision.
2a805d9c Revert "GLSL: Fix #1279: refract does not have a double-type eta."
bea08fe0 Merge pull request #1405 from Igalia/nroberts/amb-arrays
1d024b53 Take into account arrays of opaque types when reserving bindings
2c8265bb GLSL: Fix #1358: Support "struct name", where name could be a user type
1ea8f595 Merge pull request #1402 from greg-lunarg/kg21
ff50b9fb Update spirv-tools known-good
7dc1a989 Merge pull request #1401 from dneto0/bad-e11
617d1b12 Relax a stringToDouble test for, OSX AppleClang 9.1
ba018e67 SPV: Fix #1399 emit ImageGatherExtended when using ConstOffsets operand
ad7645f4 Fix #1360: uint->int width conversions must still be typed as uint.
14b85d3f Fix #1395: GLSL volatile maps to SPIR-V Volatile and Coherent.
d6c97557 Change the major revision number for next commit.
a7eb582a Bump revision.
9c3fde7f Merge pull request #1397 from LoopDawg/warning-fix-4
470a68cf Fix several signed/unsigned comparison compile warnings.
32d3ec31 Merge pull request #1394 from greg-lunarg/kg20
b0c42b28 Update spirv-tools known-good.
4f888534 Fix #1391: Remove use of nonportable strnlen().
b91189db Merge pull request #876 from ligfx/cmaketargetincludedirectories
a895f378 CMake: use target_include_directories to expose includes
92d05c0c Merge pull request #1386 from zeux/master
369dc87a Merge pull request #1387 from jeffbolznv/disassembly_explicit_types
fa34a9ad Merge pull request #1385 from KhronosGroup/fix-strtod
3e8e9f7b PP: Implement locale-independent strtod, using istringstream and a fast path.
af7a9487 Add bit width of types to disassembleInstruction
6c52f896 PP: Remove second parsing of numbers recorded in macros; save/use original.
1ea1b13f Testing: Add new tests, and new ways of testing, for floating-point.
8e4b496d Merge pull request #1388 from greg-lunarg/kg19
d2b55801 Update spirv-tools known-good
b239d22f Fix TextureUpgradeAndSamplerRemovalTransform when used with qualifiers
c6d25539 Merge pull request #1384 from LoopDawg/self-cast
c5991671 HLSL: allow self-type cast (as no-op passthrough)
2aaef122 Bump revision.
ebec9094 GLSL: Fix #1279: refract does not have a double-type eta.
a0044f4f Merge pull request #1381 from LoopDawg/coverage_array
98e1d7f6 Merge pull request #1383 from amdrexu/bugfix
b4a2a6cf Fix issue #1376: SPV_AMD_gpu_shader_half_float is not emitted under vulkan1.1
4e6d3eaf HLSL: require coverage mask to be arrayed output.
cfb05ec7 Merge pull request #1379 from LoopDawg/groupid-fix
91a8178e HLSL: various SPIR-V compute shader IDs must be a 3-vector of integers.
90de7a74 Merge pull request #1378 from LoopDawg/append-decl-order
1326b8c7 HLSL: Allow stream output Append() method after entry point.
1831087e SPV: Fix #1374: For an SSBO 16-bit access, only emit StorageUniformBufferBlock16 capability.
2fb966aa Merge pull request #1375 from Igalia/nroberts/aml-arrayio
ecbd056b Tests: Fix #1372: Don't legalize runtests HLSL tests.
22b71f9a Skip outermost array when assigning locations to auto-array interfaces
fd9d9ef4 Bump version.
d2e9829a Merge pull request #1370 from KhronosGroup/fix-param-types
115c3b14 Merge pull request #1369 from greg-lunarg/kg18
d3ed90be Fix #944: Convert argument type to match formal parameter type.
517eabb4 Update spirv-opt known-good
25bef930 Merge pull request #1363 from mattparks/patch4
115cf8ea Merge pull request #1368 from danginsburg/issue_1367
fb6924d2 Fix issue #1367 - change the I/O remapper to ignore push constants so it does not apply a binding/descriptor set to them.
9cf275bb Build: Add missing break statements. Fixes #1052.
1199cf92 Fixed install for SPIRV, glslang, and hlsl when building shared libs
e375dad6 Merge pull request #1364 from greg-lunarg/kg17
6b5d52a6 Update known-good.
46e07313 GLSL/Vulkan: Warn about arrays of arrays of resources that need bindings.
b4cb70fc GLSL: Fix #1359: don't allow unsized arrays as initializers.
d8462c6f validate script: fix path
c325f436 GLSL: Fix #1300: Can redeclare without size a sized built-in block array.
3beac945 Infrastructure: If using .hlsl suffix, default is -D.
4c574708 Bump revision.
2ead40ff Tests: Add usage and tests for previous commit.
fccbb8b4 Merge branch 'nicebyte-glsl-ext'
62f84fd5 Merge branch 'glsl-ext' of into nicebyte-glsl-ext
3bb4c48c Bump revision.
16b80f78 Merge pull request #1345 from amdrexu/bugfix
7c88aff1 Specify SPV_AMD_gpu_shader_int16 extension string when frexp() takes 16-bit exp operand
6cf7645c Bump revision.
c034c5a8 HLSL/SPV: Declare DepthReplacing for shaders declaring SV_Depth* outputs.
24eae066 Merge pull request #1348 from greg-lunarg/kg16
d91e0360 Merge pull request #1351 from danginsburg/issue_1350
5a69b675 Update gold results
33ddaaaf Make FindLanguage use the entire name if parseStageName is false
ef203bfa Fix build error
3350741e Make glslang validator support files ending in .glsl
95c87b65 Fix issue #1350 - set the node type to match the atomic TIntermAggregate node type so that AtomicSMin/Max is not generated with a result type of void.
0f8d43e5 GLSL/Vulkan: Enforce no location aliasing in vertex inputs.
c51bff8d Update spirv-opt known good
5d3babdb Build: Fix #1347: Compile with NV_EXTENSIONS disabled.
b9e9e57f Merge pull request #1326 from mattparks/patch1
461ea099 Non-functional: Fix tabs.
e891afac GLSL: Fix #1330: default outputs for GL_NV_geometry_shader_passthrough
9de57c81 Bump revision.
5cd155f0 Merge pull request #1343 from KhronosGroup/uint-counter-bufs
c3a370db Merge pull request #1341 from St0fF-NPL-ToM/master
6ae18707 HLSL: Fix #1332: consistently use uint for counter buf typing.
1aaa3567 Revert "add ability to record accessed and declared "named defines""
619dc896 Merge pull request #1338 from cgmb/minor-shaderlang-fixups
1dcd1623 GLSL/SPV: no location on atomic_uint; Fix #1339.
39bbad5a Minor cleanup in ShaderLang.cpp
a1184ddd fix further MSVC 2012 build issues
e7350423 add ability to record accessed and declared "named defines"
77d04598 fix VS2012 compile issues
b92ce60f GLSL/SPV: Fix #1310: don't create unnecessary integer matrices.
88a6a181 README: Expand on the C++11 compiler requirement for MSVS.
11b5c311 Update revision.
5d8d7882 Fix #1328: ENABLE_HLSL=OFF breaking build.
f52b6381 Fix #1331: Emit SPV_GOOGLE_hlsl_functionality1 for counters.
7f0bcfd8 Fix #1333: Protect against -g for non-generating code.
a89f8cf7 Merge branch 'nonuniform-dynindex'
4597fea8 Update revision.
6a8a678c Revision/Version update.
5611c6d2 GLSL/SPV: Implement SPV_EXT_descriptor_indexing and GL_EXT_nonuniform_qualifier
0b5e5da7 Update revision.
6a4a427e GLSL: Implement correct semantic checking for run-time sized arrays.
5a867aca Linker: Fix #1329: correctly merge unsized arrays, and fix link tests.
ed834895 Merge pull request #1327 from mattparks/patch2
21993569 Added getter for uniform block bindings
6c5f649a Allowed for LIB_TYPE to be set to switch between static and shared libs for glslang, SPIRV, and HLSL
fbdba369 Merge pull request #1325 from KhronosGroup/simplify-doc
10971553 Non-Functional: Remove unused parts of the disassembler.
d688796a Merge pull request #1322 from jeffbolznv/master
2abe9a4d Implement GL_NV_shader_subgroup_partitioned
6b1ede41 Merge pull request #1320 from greg-lunarg/addopt21
fb03a55e Only print legalization warning if optimizer disabled
7be36647 Merge pull request #1319 from KhronosGroup/array-rationalization
f9a05f96 Merge pull request #1316 from greg-lunarg/addopt18
c408b430 Merge pull request #1318 from amdrexu/feature
ead86224 Non-functional. Rationalizations enabling future generalizations:
2316924b Non-Functional: Remove merge-replicated code and fix white space.
ae06d1fe Add int16 support to AMD_trinary_minmax and AMD_shader_ballot
4bede9eb Disable DCE by Remapper through glslangValidator...
643e57cd Merge pull request #1313 from greg-lunarg/kg15
26ad99b5 Merge pull request #1312 from KhronosGroup/fix-mixed-array-styles
0b46c1ed Merge branch 'master' into kg15
eecb874c Update SPIRV-Tools known good.
859b0342 Types: Fix #1290: Rationalize and correct "mixed" style array dimensioning.
1c3ab274 Test Results Only: Include size in implicitly sized arrays (change to unsized).
7cec64fc Non functional: add EshTargetClientVersion alias for EShTargetClientVersion.
97e35420 Non-functional: always return value from makeFpConstant().
569dd84a Merge pull request #1306 from Igalia/uniform-aml-v2
1b1ad97d Merge pull request #1305 from amdrexu/bugfix
2d539049 Take into account the number of locations taken up by a uniform
1fe4a447 Add locations to opaque types for OpenGL
b126550b Add additional error check for fragment shader outputs
95b1334a Bump patch version.
ca4366cf Merge pull request #1302 from KhronosGroup/cpp-relax-skiptokens-errors
e7e081bd PP: don't give errors on some tokens under #if 0 (or similar).
56e80565 Merge pull request #1282 from KhronosGroup/hlslFunctionality1
5d610ee1 Implement SPV_GOOGLE_hlsl_functionality1.
cd23a475 Merge pull request #1291 from ben-clayton/add-nv-nopersp
0af69da1 Bump patch version.
fb1e40b4 Merge pull request #1299 from KhronosGroup/fix-conversions
f6480833 Add tests for GL_NV_shader_noperspective_interpolation
cb32c544 Merge pull request #1289 from Igalia/igalia/dmat-scalar-division
647fccaf AST: Fix shift conversions, which don't require matching types.
6e899be5 Non-functional: Rationalize operators handled by the split addConversion() functions.
137a24df AST: Remove convertToBasicType() which was obfuscating the conversion design.
075c8c11 Merge pull request #1294 from dgkoch/dgkoch_build_fixes4
bfe09521 Fix build several build errors
3e2a3c46 Merge pull request #1293 from baldurk/remove-en-dash
34cd7630 Replace en-dash with simple ASCII hyphen
017a567b Add support for GL_NV_shader_noperspective_interpolation
eddb1318 Use the correct type for the constant for matrix/scalar division
2ad4737d Merge pull request #1286 from greg-lunarg/kg14
b095da74 Merge pull request #1288 from amdrexu/bugfix
2bd8cd04 Merge pull request #1287 from eintw1ck/master
a00e51b5 HLSL: Correct some mistakes for min16 types
b3e80f5a include/Common.h: reorder includes to avoid redefinition on some platforms
bfa64afb Increment minor version to 4
c96885f4 Update known_good to SPIR-V 1.3 support
845860d5 Merge pull request #1283 from siavashserver/fix-memory-leak
ca279340 Merge pull request #1284 from amdrexu/bugfix
7798aaf1 Allow --hlsl-enable-16bit-types to be used without AMD_EXTENSIONS
b502a802 Fix memory leak upon ProcessDeferred failure.
a5152505 Merge pull request #1269 from bkaradzic/master
9c82dd10 Merge branch 'amdrexu-feature'
fb97d25c Merge branch 'feature' of into amdrexu-feature
45422f18 Merge branch 'amdrexu-bugfix'
f15fbc04 Merge branch 'bugfix' of into amdrexu-bugfix
56364b08 Merge branch 'sheredom-fixup_sm_60_wording'
e62d1baf Merge branch 'fixup_sm_60_wording' of into sheredom-fixup_sm_60_wording
ac370792 Revert the commits that change OpArrayLength type and bumped the version number.
fd920b3b WaveReadLaneFirst is the correct wording (was using WaveReadFirstLane previously...).
097047a9 Merge pull request #1277 from KhronosGroup/Vulkan_1_1
e68a7698 Add more error checks for swizzleInvocations{Masked}AMD()
cb61eec9 HLSL: Map min types to GLSL 16-bit types
1e5c9463 Fixed ifdef.
66011cb2 SPV: Implement Vulkan 1.1 features and extensions.
b2ae1d05 Revert "Merge pull request #1274 from greg-lunarg/legal2"
663b90d9 Build: Fix build issues with previous commit.
2c65069e Merge pull request #1274 from greg-lunarg/legal2
fa9b465b Versioning: Bump to minor version 1, for new SPIRV-Tools update.
fd50f6a4 Legalization: Omit legalization warning when spirv-opt is linked.
caa54449 Merge pull request #1263 from greg-lunarg/kg12
02538357 Merge pull request #1272 from amdrexu/bugfix
4f5b99e3 Add more error checks for interpolateAtVertexAMD()
c6c80a6e Versioning: Address #1255: Move to semantic versioning.
1de8e54d Fixed GCC+Clang errors and warnings on Linux and OSX.
41e24fdb Merge branch 'amdrexu-bugfix'
aa2295f1 Merge branch 'bugfix' of into amdrexu-bugfix
0216f24f SPV: Bump up the generator number.
e518772d SPV: The result type of OpArrayLength should be UINT
b5b5f918 Non-functional: Make the vulkan version number meaning be only 0 or not 0.
e58d58b7 Non-functional: Move to latest headers.
29c49e10 Merge pull request #1266 from amdrexu/feature
2c40e856 Merge pull request #1268 from amdrexu/bugfix2
81f4c03a Fix issues of SPIRV headers
1e5d7b0b Implement the extension GL_AMD_gpu_shader_half_float_fetch
5630d0ec Fix typo.
60a57840 Merge pull request #1264 from dneto0/typo-client-version
52e9435e Merge pull request #1265 from davidhubbard/master
f5ddcfc5 TBuiltIns::identifyBuiltIns: EShLangFragment fallthrough
506d2c24 Fix typo in help for -V<bad-number>
c5215791 IO mapper: Fix #1261: Supply location mapper with size computer.
5778ee4a Update spirv-tools known_good
d55fe865 HLSL: Fix #1257: layout float1, int1, etc., as scalars.
46413d57 SPV: Fix #1258: cache constant structs by id, not opcode.
57f6a016 SPV: Complete OpModuleProcessed implementation, enabled by have 1.2 headers.
e1cc1e2e Merge pull request #1256 from KhronosGroup/require-binding
9c9c4e90 GLSL/SPV: Fix #1196: Require resources to have layout(binding=X).
2d9973de Tests: specExamples.vert is used twice, it needs two different output names.
90ac5fcf Merge pull request #1253 from KhronosGroup/hlsl-ternary-select
4bee531f HLSL: Fix #1249: Always execute both sides of ternary "?:".
a5cae082 Merge pull request #1250 from LoopDawg/image-fetch-conversion
4425f245 HLSL: Add conversions for image ops during SPV construction
b587fb62 GLSL: Fix #1247. Remove extraneous *= matrix test.
98e3fb19 Merge pull request #1246 from amdrexu/bugfix
35a3de74 Fix an issue of interpolateAtVertexAMD().
23ea3db3 Warning for #pragma once. GLSL and HLSL. Addresses #824.
b5bf536b Merge pull request #1244 from dneto0/update-spirv-tools
3394353b Merge pull request #1243 from greg-lunarg/kg11
497d5ffe Update SPIRV-Tools known-good
484cbd04 Upgrade to work with gitlab branch
4ee5193b Non-functional: GLSL: Fix #1242; don't pass reference to nullptr.
2f658e1f Merge pull request #1241 from greg-lunarg/kg9
8a4848f5 Add DeadInsertElim to legalization and RedundancyElim to -Os.
b5ab3459 Merge pull request #1239 from KhronosGroup/deeper-access-chains
9ffc72d1 Merge pull request #1238 from zeux/pp-string-buffer
71b5da60 SPV: Bump up generator number, because previous commit changes code gen slightly.
5c3eed54 SPV: Create more access chains addressing a few swizzling issues.
75cffdf9 Preprocessor: Use std::string instead of std::stringstream
2651ccae Merge pull request #1234 from dneto0/update-spirv
d1232992 Update SPIRV-Tools known-good
b3f9e0a3 GLSL: Fix #1229: merge array sizes in parameter declarations.
98e733cb Merge pull request #1232 from KhronosGroup/control-flow-attributes
da0b18c3 Error message: Improve error message (will help another party id a bug).
30476568 AST: dump attributes along with control flow.
a2858d9b GLSL: Implement GL_EXT_control_flow_attributes.
e18fd20d HLSL: Refactor attribute implementation.
e349af7e Non-functional: Fix #1231: remove duplicated code.
2b5ea9f8 SPV Version: Emit the requested SPIR-V version, not the header version.
43f5b273 Non-Functional: Use OpModuleProcessed from the unified header.
22f02d09 EShTargetSpv: Fix #1235, spelling, in a backward compatible way.
6c1c2766 SPV: Bump SPIR-V header to the unified1 version (version 1.2).
82ead04c Non-functional. Fix #1223: expand comments.
ade21c71 Merge pull request #1224 from fjhenigman/unused
ab46a2e5 Merge pull request #1221 from dneto0/update-spirv
541f7bbd Fix unused function warning.
0e58bbd5 Update known-good spirv-tools.
e22e3473 HLSL: Fix #1208: accept both int and uint in asuint() and asint().
63400477 HLSL: Protect against 'continue' outside of loops.
9b5668c8 HLSL: Fix #1214: check for nesting in loop/switch of break statements.
7420a761 HLSL: Fix #1215: propagate error on seeing a type name instead of a variable.
eb2c0c72 GLSL: XFB: more support for built-in block redeclarations with XFB.
9c6f8cc2 Scanner: Many int16 and float16 fixes, including performance.
c043aadd Scanner: Many int64 fixes, including performance.
adc33b23 Non-functional: Fix HLSL error message, and code formatting.
99892d5a Merge pull request #1211 from greg-lunarg/kg7
ead4bb19 Update known good spirv-tools. Fixes issue #1205.
798d005c Build: Tickle bots to try again... seems like a process hang; all tests passed.
132cf537 HLSL: Fix #1203: Declare anonymous members for cbuffer with no ';'
fd1e8a78 HLSL: Fix 1201: Accept 'layout' as an identifier.
046bae0b HLSL: Attributes: Add [[vk::constant_id()]] and [[vk::push_constant]]
e08ed0cc Merge pull request #1190 from jfmarquis/hlsl-store-type-propagation
848a0ccb Merge branch 'greg-lunarg-flatten1'
8a3f7a12 Merge branch 'flatten1' of into greg-lunarg-flatten1
b3cff2f2 HLSL Tests: Remove optimization from tests that don't need it.
e0639287 HLSL Legalization: Add scalar replacement
3f0aff8e HLSL: Fix possibly incorrect type conversion in StoreN and LoadN
3b2dc1a7 Merge pull request #1195 from LoopDawg/gcc-bug-workaround
c074f2bc g++ 5.4.0 suspected defect workaround
3f0d4bcd SPV: Document history of the generator version number.
e1ff2312 GLSL: Fix #1193: no 'location' on uniform/buffer block.
a0d60f2b gcc: potentially a compiler-bug work around
2505057a SPV: Memory model: Reduce set of memory-semantic bits requested for "all".
838d7afc SPV: HLSL: Move to correct HLSL barrier semantics, per Khronos recommendation.
c72e5937 SPV: Bump the generator number to account for barrier changes.
8297936d SPV: Change barrier emission to conform to Khronos decisions.
070aaeaf HLSL: Fix #1192: when bool operands are converted to ints, convert result type.
35682b59 Merge pull request #1191 from greg-lunarg/kg6
72deeb25 Update spirv-tools known-good.
788fbeb3 HLSL: Make attributes for built-in override semantics.
a67d0706 Merge pull request #1189 from KhronosGroup/spv-xfb
edaf5567 SPV: Plumb through XFB buffer and stride information.
be3842f6 GLSL: Implement XFB for redeclared built-in blocks.
04f4566f Merge pull request #1184 from KhronosGroup/SPV_EXT_fragment_fully_covered
1c5443c6 Add implementation of SPV_EXT_fragment_fully_covered
e9e0cb60 Update to latest public headers.
396de16c Merge pull request #1183 from LoopDawg/builtin-output-array-indirect
69feabc9 Merge pull request #1186 from zeux/master
c92860e2 HLSL: Implement support for RT/Viewport output from VS
0cff5100 HLSL: for split output structs, propagate indirection to builtin.
e078059d Merge pull request #1174 from LoopDawg/y-flip
8116cfc9 HLSL: Give error on unsupported buffer initializer.
87982be1 HLSL: Remove unintended/untested functionality PrimitiveID.
67fca7c4 Merge pull request #1178 from LoopDawg/primitiveid-hs-input
1cfc0f9e Merge pull request #1175 from KhronosGroup/no-flatten-local-opaque
280c75ca HLSL: Allow primitive id on hull shader inputs
dc005fb0 HLSL: Stop flattening non-IO structs containing opaques.
b22c069f HLSL: add optional position.Y inversion
471bfed0 HLSL: Fix #606: make layout() override register.
cc951f81 HLSL: Fix #1154: Support PointSize, as an attribute.
b0159f85 Merge pull request #1151 from cgmb/update-readme
384b2070 Improve build instructions
6a14f780 HLSL: Fix #1163: treat buffers as references when calling functions.
1f899924 Merge pull request #1171 from greg-lunarg/kg5
531898a4 Merge pull request #1170 from LoopDawg/matsize-warnings
3e72d265 Update spirv-tools known-good
8c49f9b4 HLSL: minor: add warning for mat() matrix size truncation
7199a6d1 Add initialization in case it is causing the Apple Clang release failure.
ffc31cdc Tests: Trigger more texture tests, and hopefully see build failure go away.
1ce94b2d Merge pull request #1166 from tafuri/#1165-invalid_Store
b2abe2f0 Merge pull request #1169 from LoopDawg/cbuffer-identifier
c4372e43 Merge pull request #1167 from LoopDawg/matmul-truncate-mxm
72cddd01 Merge pull request #1168 from greg-lunarg/kg4
7ee29ba7 HLSL: allow keyword-identifiers as cbuffer/struct names.
30d92db0 Update spirv-tools known-good
cee29b04 HLSL: add implicit mat*mat truncations
66b319d3 Added new test to gtests and updated test data
59677dae Respect the array type in Store operation
792a9480 Merge pull request #1161 from LoopDawg/matmul-truncate
2e629106 HLSL: matrix and vector truncations for m*v, v*m, m*m
698bf754 Memory: Mak full explicit destructor functionality, techincally correctly.
1cf2b355 Memory: Fix #705: don't use pool object after invoking destructor.
fd1d07da Memory: Put pragma tables in the pool.
cbdf871d SPV: SampleMask does not depend on SampleRateShading.
e2c15b4f Memory: Reference count number of clients, to support multiple independent clients in same process.
b63f4a38 Usage: clarify meaning of -s; fixes #1135.
cb421ef9 Test: Add more legalization tests; those effected by flattening.
ca4ef9f4 Merge pull request #1156 from LoopDawg/snorm-uav
6e49c76e Merge pull request #1157 from LoopDawg/gs-hs-mix
7573a2ab HLSL: ignore geometry attributes on non-GS stages.
4036ef15 Merge pull request #1147 from KhronosGroup/memory1
ab9c6a8a Merge pull request #1155 from antiagainst/skip-tags
5da8ead7 Memory: Remove redundant pool popAll(), which is potentially confusing.
fa39cffd HLSL: Accept unorm and snorm on types
9a65c6a9 Appveyor: avoid double testing on master commits
fc3e8647 Implement OS_DumpMemoryCounters for Linux
74bde987 Memory: Restore unused interfaces, in case other tools called them.
c9e67405 Merge pull request #1150 from antiagainst/readme-release
30c60bdf Update README about the automatic master-tot relase
a9c8cce8 Merge pull request #1143 from LoopDawg/texturebuffer
94f28eb6 Memory: Add loop around main, to test tear-down and reuse, and monitor memory changes.
cb42541e Memory: Remove the need for per-thread tear down.
ff8e59f5 Memory: Do process and 1st thread tear down.
4ceaab16 Memory: Move to a normal model of ownership of memory pools, for new/delete.
be209055 Memory: Non-Functional: Rationalize and improve encapsulation of TLS usage.
a36997cb Merge pull request #1142 from greg-lunarg/kg3
4abd6b58 Merge pull request #1145 from antiagainst/travis-auto-deploy
fba299a2 Travis: auto deploy build artifacts to GitHub Releases
a0680e61 Merge pull request #1114 from LoopDawg/validator-script
a50a9de3 Merge pull request #1116 from LoopDawg/reverse-shift-args
7c2f6d85 Merge pull request #1144 from antiagainst/appveyor-auto-deploy
e570955c Reverse order of setShiftBindingForSet parameters
4ec680e1 Add script to crank test shaders through spirv-val
a7eab9b3 Appveyor: auto deploy build artifacts to GitHub Releases
e5530b92 HLSL: implement TextureBuffer<type>
c77da685 Update spirv-tools known good.
2edde666 SPV: Don't support noise*() when generating SPV.
af52799c Errors: Have a whole set of tool-level error messages report to stderr.
a372a3ed Versioning: Update some version strings. Still need better overall version.
9f0b6fa4 Merge pull request #1139 from greg-lunarg/remap2
e86b4c84 Remapper: Fix strip algo when strip ranges overlap
88e22a60 Fix #1079: don't give error when macro() name used without open (.
e8d21388 Fix nondeterminism discussed in 258b700f5957fc13b0512b3734a1b0e81a1c271d
ac516024 Fix #1065: don't validate Vulkan binding numbers.
715c353a Non-functional: copyright update, to help with non-determinism test.
5866e67b Tests: Non-determinancy: Add back in the IntMin tests.
a6362228 Merge pull request #1133 from greg-lunarg/kg2
3f9c03bd Add python3 compatibility to
258b700f Non-determinant tests: Remove recent tests, to see if things stabelize.
e9173b19 Non-functional: Add {} expected by convention; retrigger failed bot tests.
0501e7c8 Merge pull request #1129 from xorgy/const-fold-int-min-modulo-negative-one
f83e2f06 GLSL: Fold constant SHRT_MIN/INT_MIN/LLONG_MIN % -1 to 0.
b5b08462 Merge pull request #1124 from xorgy/check-inner-implicit-atomic-uint
60209951 Merge pull request #1127 from xorgy/preprocessor-int-min-mod-negative-one
9d4a1b24 Preprocessor: Evaluate INT_MIN % -1 to 0.
047b65f9 Merge pull request #1125 from greg-lunarg/kg1
cc80d80d Update spirv-tools known-good
437911af GLSL: Check for implicit inner dimension in array of atomic_uint.
9cfc1551 Merge pull request #1118 from xorgy/only-swizzle-numbers-and-bools
016e47f7 Merge branch 'only-parse-inf-constant-in-hlsl' of into xorgy-only-parse-inf-constant-in-hlsl
6e33b787 Tests: Add test for GLSL +-#INF.
79a40740 Merge pull request #1120 from xorgy/overlong-hex-literal
60312662 GLSL: Only parse [-]1.#INF in HLSL mode.
9028ed20 Check for hexadecimal literals exceeding MaxTokenLength.
07c0bcea Only try swizzles on vectors, numbers, and booleans.
b1eaf82c Merge pull request #1115 from LoopDawg/stdarray-binding-set
2915da30 Nonfunctional: minor: use std::array for per-set shifts, fix warning.
573cc9e9 Merge pull request #1111 from LoopDawg/per-set-binding-offsets
7a9db71f SPV: Don't emit StorageImageMultisample capability for subpass images.
6cfeced8 Non-functional: missing comments from missed git add.
1b46f137 HLSL: Fix #1106. Support shader setting of binding/set for $Global.
08a14422 Add per-descriptor-set IO mapping shift values.
fe4e572c GLSL->SPIR-V: Put precision decorations on imageLoad().
f0e35bf0 GLSL: Make sampling operations have agnostic precision qualifiers for desktop.
3112b568 Merge pull request #1113 from xorgy/preprocessor-int-min-over-negative-one
0b55e0f2 Merge pull request #1102 from KhronosGroup/partially-flatten
dc756a61 Preprocessor: Evaluate INT_MIN / -1 to 0.
a50b107e Build: Fix build warning.
8b555f74 Merge pull request #1109 from xorgy/never-try-to-swizzle-void
5313613d Don't try to swizzle void.
856502cb Update spirv-tools known-good
7d67c6cb PP: Fix #1104: Missing check for #if overflow.
1a4bbc4a HLSL: More clip fix: It is more involved than previous commit. Complete.
4ce5b562 Fix #1103: clip() works on int/uint.
5889fa03 Tests: Add clip(int) tests.
cf571f73 Infrastructure: Add a TShader method to publicly expose the intermediate.
41aa1995 HLSL: Partially flatten hierarchies, instead of all or nothing.
60e91611 Merge pull request #1098 from LoopDawg/attribute-gets
0d1f63ec Merge pull request #1097 from SWIFTingAround/master
ad2bc097 Merge pull request #1094 from LoopDawg/split-shadow-tx
ddb45f8d Merge pull request #1080 from hedejing/master
52c087ff HLSL: add helper access methods to TAttributeMap
aab00012 Set cmake-policy CMP0048 to NEW
fdbd0eba Add getAsLoopNode() method for Loop node
028c5a8d HLSL: nonfunctional: rename setId -> switchId, add comment
bb79abcc HLSL: Validate implicit initializer assignment to opaque members.
07ed11f9 SPV: GeneratorVersion: bump version number because of atomic decrement change.
b27de028 Merge pull request #1090 from tafuri/#1084-fix-segfault
48d6e798 SPV: Correct semantics of atomic-counter decrement.
592e8f04 HLSL: Tests: Add subset of flattened opaque test to legalize results.
4f6865f4 Added test for local structured buffer variable
5133b108 Fixed formatting
908813c2 Merge pull request #1089 from LoopDawg/split-shadow-tx
0a826111 Only track variables in the global scope
73c57bbe HLSL: split textures used for both shadow and non-shadow modes
263986eb Readme: Update with additional Windows build information for SPIRV-tools build.
2c9c2af6 Merge pull request #1085 from KhronosGroup/flatten-assign-subset
700bdeb7 HLSL: Fix #954: Track/access subsets of flattened multi-level aggregates.
86a82bb9 Merge pull request #1081 from xxxbxxx/for-upstream-1
a6085875 HLSL: Fix crash when flattening both side of assignement simultaneously.
24919659 Merge pull request #1075 from LoopDawg/subpass-input
7f93d56e HLSL: add subpass input types and methods
092b7d2e Build: Fix a couple build issues.
77ea30bd HLSL: Additional attribute support: [[]], namespace, parameters:
3693e631 Fix #1060: Could crash if using --source-entry-point with -e; fixed.
5a57ca68 Merge pull request #1078 from greg-lunarg/addopt14
354a54c6 Legalization: Fix tests after workarounds removed
d41993d9 SPV: rationalize parameter handling for "original" and "writable" parameters.
bed4e4f7 HLSL: Pass opaques by local copy, instead of by interface original.
15fa7ef5 HLSL: Remove workarounds for assigning to opaques.
dabd1bf2 Merge pull request #1076 from LoopDawg/shadow-tx-types
195f584e HLSL: force textures to shadow modes from combined samplers
fc7aeaee Merge pull request #1077 from greg-lunarg/addopt12
52fe3d59 Legalization: Fix warnings and disable tests when spirv-tools not present
3ddcd3f1 Merge pull request #1070 from greg-lunarg/addopt8
e2b36163 Advance spirv-opt known-good to hopefully fix travis multithread failure
b56366ab Legalization: Skip spirv-tools tests
741d1f20 Pick up latest spirv-tools in attempt to fix travis failures
87fd7429 Try Python interpreter on in appveyor
f451756d Fix travis and appveyor calls to
cd1f169c Enable HLSL legalization
44dd6a00 Merge pull request #1072 from amdrexu/feature
e8fe8b0d Implement extension GL_NV_shader_atomic_int64
f21c173a Merge pull request #1071 from antiagainst/ninja-make
afa128a8 Travis: use make instead of ninja and limit concurrent jobs
9cf5dfbd Merge pull request #1063 from LoopDawg/remapper-error-cleanup
ea5204d1 Build: Merge pull request #1068 from greg-lunarg/addopt4
fd34f0e6 CMake changes for HLSL legalization
8004d365 Remapper: make remapper robust against non-exiting error handlers
5f77d864 HLSL: Fix #1064: Don't include empty structures on OpEntryPoint
31365afa Merge pull request #1044 from dsrbecky/image_external_essl3
ae8af5d3 HLSL: fix array[1] of vec4 constant declaration.
c64a9dd6 Test: Make another test legal HLSL, and rationalize GLSL vs HLSL addConstructor().
bdbbc68e HLSL: Add bounds checking, shared with GLSL. Partially address #1032.
346dd7c7 Merge pull request #1051 from LoopDawg/bug-1049
4a145dbf HLSL: handle split InputPatch templat type in patch constant functions
a5d86164 HLSL: allow mixed user & builtin members in hull shader output structure
ba6a3c29 GLSL: Make gl_Layer and gl_ViewportIndex always be outside blocks.
aab3bcff Merge pull request #1056 from KhronosGroup/glsl-entrypoint-rename
9855bdad GLSL: Promote HLSL entry-point renaming code to be used by GLSL as well.
4f4683d2 Merge pull request #1050 from amdrexu/feature
30ac0525 Merge pull request #1055 from KhronosGroup/strdup
d9bd97d0 Build: Fix strdup -> _strdup warnings.
b3ca4045 Build: Fix build warnings.
5002c26b Fix #1043: set all scan string-locations to have bias, not just the first one.
a25530cc Non-functional: Make usage for entry points more consistent.
e22c11fd Merge pull request #1053 from mchock-nv/mchock-nv-fix-lambda
ea1ea974 Address #1052: Have language-level exits of case statements.
933c10cd Delete unused 'this' capture
05506bb8 Implement the extension GL_AMD_shader_fragment_mask
d004e5ca Merge pull request #1047 from svenstaro/add-stdin-option
0dd1285c Add --stdin
8688e3fb Merge pull request #1048 from LoopDawg/opaque-type-fix
76117921 Fix lvalue check in SPIR-V generation
2c5b3d64 Add support for GL_OES_EGL_image_external_essl3
3a21c880 Merge pull request #1042 from LoopDawg/warning-fix-2
43f682f6 Merge pull request #1039 from amdrexu/bugfix
2baa7742 Linux build warning fix
2a305f65 Fix issues of GL_ARB_viewport_layer_array
75e057f9 Merge pull request #1037 from LoopDawg/clip-cull-geom
5e5b12e9 HLSL: add geometry stage support for clip/cull distance
a459fc81 Merge pull request #1031 from xxxbxxx/for-upstream-2
4e2f05da Build: Fix #1036: size_t warning.
eb71cdd5 HLSL: fix preprocessor concatenation behaviour.
ea0c1643 Merge pull request #1035 from LoopDawg/clip-cull-type-fix
d6f4d9b4 HLSL: fix type on clip/cull index result
82e95a3a SPV: Add auto location mapping of non-opaque non-block uniform variables.
8268a355 Build: Attempt better support for VS 2012.
74c5f711 Merge pull request #1014 from KhronosGroup/SPV_EXT_shader_viewport_index_layer
35343cb8 Merge pull request #1034 from KhronosGroup/module-processes
b41bff69 SPV: 1st pass implementation of SPV_EXT_shader_viewport_index_layer.
2a27116c SPV reflection: Add OpModuleProcessed for compile options.
1f312f90 Merge pull request #1028 from LoopDawg/clip-cull-input
e2cda3c2 HLSL: handle clip and cull distance input builtin type conversion
fc343694 Merge pull request #1029 from amdrexu/feature2
00b3e384 Merge pull request #1025 from amdrexu/feature
129799a7 Implement extension GL_AMD_shader_image_load_store_lod
e8fdd79f SPV: Implement extension SPV_EXT_shader_stencil_export
3d1b7096 HLSL: Fix #1027.
778806a6 HLSL: Fix #1018: Give an error for mismatched return type.
b207daa5 Merge pull request #1017 from LoopDawg/texture-struct-return.1
786e8795 Build: Fix build when NV_EXTENSIONS is not enabled.
d6be6da0 SPV: Fix #1016: Don't allow non-GLSL-extension protected Layer and ViewportIndex members.
5ee05891 HLSL: add methods to track user structure in texture return type.
03e63fa8 HLSL: Add fall-back for opaque initializers to just generate long-term expected code.
25495fdf Merge pull request #1013 from KhronosGroup/flatten-nonarrayed
260f5061 SPV: Correct selection of storage-image capabilities. Fixes #986.
e29ff3cd HLSL: Flatten structs for all non-arrayed I/O interfaces.
01109546 HLSL: Make fresh array sizes for TessLevelOuter and TessLevelInner arrays.
4baebea8 HLSL Test: Expand test, adding a user-patch-constant signature.
e516d433 HLSL: Move debug naming to a simpler, more consistent, scheme.
3322dd8f HLSL: Include built-in processing for vertex input and fragment output flattening.
ecd08bc3 Non-functional HLSL: Factor out built-ins from splitting and related simplifications.
eaed0682 Merge pull request #1011 from LoopDawg/pragma-pack-matrix
6a264bed HLSL: implement #pragma pack_matrix(layout)
d5aedc19 HLSL: Correct which things flattening tracks for linkage, based on caller, not type.
7497e7c9 Merge pull request #1010 from LoopDawg/mat-rowcol-fix-1
898f5fbe HLSL: fix qualifier propagation from user struct types to block definitions.
2b4f77f2 HLSL: Correct use of isPerVertexBuiltIn() to be isClipOrCullDistance().
d319fb4e HLSL: Test change: Geometry shaders can't return values from main.
b6be80f4 HLSL: Flatten more I/O: non-arrayed user-only structures.
cca42a8e HLSL: Stop including empty structures in the I/O interface. Fix #785.
6042eb47 Non-functional: HLSL: Simplify I/O logic for splitting.
4cf52660 Merge pull request #1006 from KhronosGroup/4.60
934d11b6 GLSL 4.6: Implement shader group vote.
941f3bbd GLSL 4.6: Implement draw parameters.
0d0c6d38 GLSL 4.6: Implement atomic counter ops and SPV_KHR_shader_atomic_counter_ops.
de16e52b GLSL: Initiate version GLSL 460, including accept extraneous semicolons.
fda6edcb HLSL Tests: Fix two tests to be valid under FXC.
318a379b Non-functional: HLSL further simplications to base I/O flattening on.
8bcdf2ea Non-functional: HLSL: clean up dead code for splitting.
48dc5872 Merge pull request #1005 from LoopDawg/remove-unused
7a3cef10 HLSL: Non-functional: warning fix, remove unused member.
a58cc9ff GLSL reflection: Fix #985: reflect runtime sized arrays having no constant index.
a353bf1f Nonfunctional: Add reflect test case, and fix long lines in reflection code.
2ceec681 Nonfunctional: Shorten some lines to the coding standard, to retrigger failed test run.
38151b2f Merge pull request #1002 from amdrexu/bugfix
286ca432 SPV: Memory qualifiers should decorate top-level block members
f1f5058a Merge pull request #997 from LoopDawg/clipcull-semantic
307b6507 HLSL: handle multiple clip/cull semantic IDs
d2d3a142 SPV: Update to latest 1.0 headers, removing redundancies in GLSL.ext.AMD.h.
cd52fd5a Merge pull request #1000 from LoopDawg/samplecmpzero-cubearray-fix
ef94b1a5 Fix dref explicit LOD form of sample with cube texture arrays
53863a3a GLSL: Implement version 320 for ES.
9353f1af GLSL: Add version-number checking.
67eb4970 SPV/OpenGL: Require locations on non-opaque uniform variables.
ab008675 Merge pull request #991 from LoopDawg/resource-set-binding-fix
a2b71902 Reflection: Fix #977: Expose getBinding(), use in new getUniformBinding().
52017192 Fix crash with --resource-set-binding [n] (common set form, not per-register form)
0e392aa9 Merge pull request #996 from KhronosGroup/decorate-parameters
961cd35b SPV: Fix #995: Include memory decorations on parameters.
fad62972 SPV: Non-functional: support lists of decorations per parameter.
198652a6 Merge pull request #994 from KhronosGroup/opaque-init
0e6e2ffd Fix #980: flatten opaque initializers to use aliases.
37c202aa Merge pull request #992 from polarina/null-deref-fix
b5d9c11e Fix NULL pointer dereference in TParseContext::builtInOpCheck
91e69c03 SPV: Address #989: Don't add Location to built-ins when automapping.
56d2b990 Merge pull request #987 from KhronosGroup/global-std140
735d7e56 Address part A of #982: $Global will use std140 instead of HLSL offsets.
1e4a721c Merge pull request #978 from LoopDawg/global-const-init-fix
d854ac8b Merge pull request #983 from LoopDawg/warning-fix
b97b25e4 Fix StandAlone.cpp compilation warnings
0fca0baf WIP: HLSL: support global const initializers from non-constant rvalues
652db16f Build: Fix #975: shut up a compiler warning (code was fine).
4b1a890b Nonfunctional, infrastructure: Clean up Test directory droppings.
645fdaa7 Merge pull request #971 from amdrexu/bugfix
57e65929 HLSL: Translate directive [flatten] and [branch] to SPV control mask.
423fae48 Tests: Add a test for concurrent use of std430 and push_constant.
9645f782 Merge pull request #965 from chaoc/spv-khr-post-depth-coverage
c1204527 Implement SPV_KHR_post_depth_coverage
33bf7b2f Merge pull request #974 from LoopDawg/anyall-types
54b9ff9c HLSL: handle type conversion for any/all intrinsics
17b5f917 Merge pull request #969 from d3x0r/patch-1
3f70d405 Merge pull request #970 from rohith10/master
6206091e Fix CMake scripts: The set_property script can be used to set only a single property, so now setting the POSITION_INDEPENDENT_CODE property correctly.
45933124 Update CMakeLists.txt
4e53d905 Update CMakeLists.txt
89de217f Update CMakeLists.txt
9c6ea324 Update CMakeLists.txt
57a2b22d Update CMakeLists.txt
cde46127 Update CMakeLists.txt
02ed9eb2 Update CMakeLists.txt
42b69261 Update CMakeLists.txt
f8f494ff Add option to skip installation
eb5f12d1 Merge pull request #967 from dsrbecky/multiview
d1be7545 HLSL: Non-functional: Move partial flattened access into symbol node.
02a14e7c HLSL: Non-functional: some coding convention tweaks (120 columns, nullptr).
0af795e8 Merge pull request #966 from TiemoJung/io_remapper_update
aad93a80 Merge pull request #959 from TiemoJung/texture_upgrade
5513d9d0 Multiview extension: Accept layout(num_views) qualifier
0422eb23 io resolver improvements
99466020 Merge pull request #964 from dsrbecky/multiview
0fbe02c6 Implement extensions GL_OVR_multiview and GL_OVR_multiview2
fde4975d Fix for not transforming all image symbols into sampled images symbols
2ae23ca1 Merge pull request #957 from amdrexu/feature
37d7cfb1 Merge pull request #961 from benvanik/fix_order
82da44d4 Fixing initialization order to fix -Wreorder warning in clang.
89400ea7 GLSL: validation of early_fragment_tests, others, on an object.
37cdceed Implement extension GL_ARB_shader_stencil_export
89f8d1e6 HLSL: Fix #942: Map SV_TargetN to SPV Location N.
4f54c0c4 HLSL: Fix hull-shader test.
da9eb815 HLSL: Don't pin down which tessellation stage must error check input primitive.
fe6689c6 HLSL: support point mode.
102328b7 Merge pull request #950 from dsrbecky/shadow_samplers
a8a83204 Merge pull request #948 from KhronosGroup/env-control
6353d55e Command-line: Add support for setting language's environment.
c178f0a4 Infrastructure: Non-functional: rationalize some command-line processing.
4be4aebd Infrastructure: Non-functional: Move to rich description of environment.
c6ac40a1 Add support for GL_EXT_shadow_samplers
4fbb8cb4 Merge pull request #947 from LoopDawg/clip-cull-distance
c44b95fd WIP: HLSL: handle clip/cull distance array semantic matching
4329d555 HLSL: Broaden solution for #940, editing integer input for 'flat'.
f0bc598d HLSL: Force flat interpolation for structure members. Fixes #940.
be1085cb Build: add switch default to make compilers happy
fba125a9 Merge pull request #943 from xxxbxxx/for-upstream-1
54596ff9 HLSL: Force flat (nointerp) onto integer fragment inputs.
b1d97537 hlsl: "in out" is also an inout qualifier.
f02c8e6b Non-functional: Attempt to reset Travis error, while adding more nullptr use.
2fcdd64e HLSL: Remove support for named tbuffer/cbuffer.  Fixes #939.
054378d9 HLSL: Non-functional: Make test valid HLSL, and related comments/cleanup.
e2ff404f Merge pull request #917 from KhronosGroup/remove-redundant-locations
f790b161 Tests: Fix missing test result.
a931366f Standalone: Implement -D and -U for preprocessor macros.
04acb1b7 Standalone: Rationalize ShaderCompUnit and file data.
6263fb19 Infrastructure: Rationalize command-line options.
2d46e73b Merge pull request #931 from LoopDawg/scalar-mat-assign
e2713125 HLSL: fix several issues in mat construction from scalars
f7cd88a2 Merge pull request #937 from amdrexu/bugfix
301a2bc8 SPV: Fix an typo of SPV_AMD_texture_gather_bias_lod
82ae8c31 HLSL: Fix #924: Convert between two different arrays with cast.
0320d090 HLSL: Recognize types declared as identifiers as identifiers.
91c46c65 Merge pull request #932 from LoopDawg/warning-fix-1
1892886a HLSL: compilation warning fix: no functional change
5ea6a192 Merge branch 'amdrexu-feature'
cabbb788 Implement extension GL_AMD_gpu_shader_int16
4d5bcd31 HLSL: Allow macro expansions to create the 'defined' operator.
3fcb42cf GLSL: Fix #853: Only outer dimension of array can be specialization constant.
d314ecfb GLSL: Correct missing "not" from error message about non writeonly images.
dd56173d GLSL: Disallow 'shared' in nested scopes.
c5f2ab96 GLSL: Disallow unsized arrays of atomic_uint.
885443c7 Build: reset for multi-threaded test error, that reported a single missing character.
14d65beb GLSL: Fix Khronos private Bugzilla 15973: local sizes can't be 0.
2eb13550 GLSL: Fix #396: Error when 'defined' comes from macro expansion.
65755667 Merge pull request #922 from KhronosGroup/dash-I
971a0a8d Infrastructure: add include search paths (-I, etc.).
96f65521 HLSL: Implement half matrices, and map all half* -> float*.
f6deacd5 HLSL: Track control-flow nesting and warn on aliasing under it.
9b2531ba Infrastructure: Move nesting counters, etc., to base class.
b4d46627 Build: Fix build warnings.
a83959fa Merge pull request #920 from jeremy-lunarg/jeremy-build
549764b5 Build: Fix linux
0e07119a HLSL: Fix #919: for-init-statement is arbitrary declaration or expression.
e00e8f45 GLSL: replace general missing functionality with specific messages.
21369c82 Merge pull request #912 from amdrexu/feature
225e0fca Implement the extension GL_AMD_texture_gather_bias_lod
7cdf3fc3 Replace #422: Remove the redundant location setting in AST->SPIR-V.
94c18a84 GLSL: Fix bug setting component=0 for an auto-location assignment.
8de7e7bf GLSL: Error when using location on an arrayed block.
99f289d4 Merge pull request #899 from antiagainst/rm-empty-cpps
0b94a31e Merge pull request #915 from LoopDawg/subvec4-intrinsic
70942e5f Merge pull request #905 from KhronosGroup/flatten-opaque-structs
f3150742 HLSL: Convert run-time sampler assignments to compile-time aliases.
750c2d07 SPV: When passing structs of opaque types, flatten and pass the members instead.
d66c5b12 HLSL: iomapper: Fix #914. Tolerate user aliasing of bindings.
a696fd1a HLSL: add test coverage for sub-vec4 texture intrinsics
ae99875e Merge pull request #907 from KhronosGroup/include
5052152e Merge pull request #913 from amdrexu/bugfix
3494b4da HLSL: Add an Includer to handle #include.
0848cc07 Parser: Add missing codes for float16
44d2728e Merge pull request #911 from KhronosGroup/debug-info
e485c7af SPV: Debug output: Include OpLine information for execution path.
121853f4 SPV: Add OpSource shader source code and file name.
136b1e2d Merge pull request #856 from TiemoJung/texture_upgrade
baf570ef Pure Texture to Sampled Texture Transform
d6af18f6 Merge pull request #901 from LoopDawg/imat-construct
7c9129bc SPV: Fix #904: Correctly check for built-in block redeclations for location check.
84cc15f0 HLSL: Fix #903: Don't short-circuit && or ||.
6e2295d3 HLSL: Fix #902: Incorrect protection against zero arguments.
174ccb8f HLSL: Add imat, umat, and bmat constructors
2c6f48b1 Fix #373: Implicitly make gl_FragColor a location=0 output.
1d585ac8 SPV: Correctly enforce 'location' presence on in/out blocks.
557caf24 Merge pull request #900 from LoopDawg/tx-overloads
7b8c386c More non-determinism fixed.
b6cabc4f Fix C++ portability, non-deterministic order of argument evaluation.
80f92a19 Fix #857: Convert uniform int to local bool for struct alias assignment.
0d2b4713 HLSL: Don't do logical short-circuits when the operands are bool-vectors.
132a28aa HLSL: allow name mangling based on texture template type
ddda9cb8 Remove empty cpp files
ab0847ef Merge pull request #896 from KhronosGroup/spv-location
ff164d87 Merge pull request #897 from LoopDawg/remap-specconstop-fix.2
65c2eed6 Remapper: handle embedded opcode in OpSpecConstantOp
71facdf4 SPV: Give error on not assigning locations to I/O.
24e895b4 Merge pull request #860 from steve-lunarg/sb-counter-args.2
09a29d9b Merge pull request #893 from KhronosGroup/member-call
2bb1f39f WIP: HLSL: add ability to pass struct buffers with counters to fns
0a2a0cd3 HLSL: Implement member functions calling member functions.
b29cc30c Merge pull request #852 from steve-lunarg/declared-builtin
a4bfed12 WIP: track declared builtin type [proposal]
1a010b83 Merge pull request #890 from LoopDawg/mip-operator
726bf96a HLSL: add .mips[][] operator for texture types
c70bbc83 Merge pull request #889 from antiagainst/travis-android
b21213e8 Check Android build on Travis CI.
ef7efb21 Merge pull request #888 from LoopDawg/geometry-stage-mix
c6510a33 HLSL: allow GS-specific methods in other stages
c49b4efa HLSL: Fix #884: Use promoted children, not pre-promoted, in completing binary nodes.
c48c8e76 Merge pull request #886 from antiagainst/unordered-set
2840f63f Use unordered_set in ReadableOrderTraverser.
d9b08d5c Merge pull request #880 from aras-p/master
02c4728a Merge pull request #874 from xlpiao/DescriptorSet-and-Binding
23d3c712 [lumped builds] Add include guards (#pragma once) to header files that did not have any.
8e204b2d [lumped builds] Only define _CRT_SECURE_NO_WARNINGS if it’s not defined yet. When glslang is built with some other build system and lumped/unity builds are used, without the checks this would get “macro is being redefined” warnings/errors.
36dc8290 HLSL: Manually configure descriptor set and binding number for resources
12d69368 Build fix: Make string assignment simpler to avoid some compiler issues.
1ee1c8e1 Build: Fix portability in previous commit.
c10191d1 SPV: Support texelFetch() on a textureBuffer (no sampler).
a5c5fb61 SPV: Emit extension for using StorageClassStorageBuffer.
43c72b0e Merge pull request #878 from steve-lunarg/unroll-hint
f1709e71 HLSL: implement [unroll] and [loop] attributes
de1cc06c Merge pull request #877 from steve-lunarg/warn-fix1
0c20067c Fix iomapper build warnings
7aaf4191 Merge pull request #873 from steve-lunarg/gathercmp
6817f81e HLSL: Implement missing GatherCmp
22be5788 Merge pull request #870 from SoapGentoo/cmake-fixes
22afc38b Modernise CMake #2
eb9a532b Merge pull request #869 from KhronosGroup/revert-828-fixes
cfc69d95 Revert "Modernise CMake"
a01600b8 Merge pull request #828 from SoapGentoo/fixes
8f824265 Make test suite optional by using CTest
5a5699bd Modernise CMake
acce8dce Merge pull request #868 from TiemoJung/two_pass_io_remap
bbae7de0 Merge pull request #867 from steve-lunarg/emptyinit
f1bfeec7 Notification phase for io remapper
c0043cda HLSL: Allow empty struct initializers
7cca1409 HLSL: Turn on hlsl-offsets by default for HLSL-source shaders.
dd5dee0b Merge pull request #859 from steve-lunarg/sampleposition
d4d0b297 HLSL: add standard sample position return form of GetSamplePosition method
88aabcca Merge pull request #855 from steve-lunarg/constantbuffer
a766b838 HLSL: Add ConstantBuffer<T> syntax
a1cdd13b Merge pull request #851 from dgkoch/dgkoch_build_fixes3
15bb4370 Fix Android build errors
8a5718a9 Merge pull request #849 from steve-lunarg/samplercmp-errmsg
3cbc32f4 HLSL: add error for expected comparison sampler in SampleCmp* ops
32a385e9 HLSL: Fix #846: support mixed ternary types.
0603a383 Merge pull request #847 from steve-lunarg/sb-param-fix
1c04f1e5 Merge pull request #842 from steve-lunarg/sb-cast
1487db54 Merge pull request #840 from steve-lunarg/iomap-hlsl
e404e088 HLSL: fix for byte address buffers in fn parmeters
7b1dcd66 HLSL: add readonly qualifier to tbuffer, so they end up as SRV
be283550 WIP: HLSL: hlsl register class iomapping
ba5cc2fa GLSL: Fix #822: Improve information given for syntax errors.
0c6f9360 HLSL: Fix #96: Support do-while loop substatements with no curly braces.
f8203a0a HLSL: cast non-int types to uint on Load/Store indexes
67027189 SPV: Support test #pragma for generating the StorageBuffer storage class.
a8d3db6b Merge pull request #835 from steve-lunarg/sb-counters
d5d9ffbd HLSL: vector shape conversions for all ops: Fix #839. Fix #653. Fix #631.
2aa12b1c HLSL: Address #839: avoid crash by distinguishing between bad argument and no argument.
350b9485 WIP: HLSL: add refection queries for structuredbuffer counter blocks
12bc9aa9 WIP: HLSL: add Append/ConsumeBuffer support
8e26feb8 WIP: HLSL: structuredbuffer counter functionality
d1141843 SPV Non-functional: fix ordering causing problems with another branch.
97366a0d HLSL: Fix #770: implicitly convert bool operands to numeric operators.
a4c64c98 HLSL: Fix #834: Report #version is an illegal command.
a0c578a6 HLSL: Fix #758: Support character literals (except for numeric escape sequences).
2051815b HLSL: Fix #803: Add shape conversions to the constant-initializer path.
a8b217fd Merge pull request #833 from KhronosGroup/hlsl-inf-syntax
776c515e HLSL: Support 1.#INF and -1.#INF syntax.
b5e739c2 HLSL: Fix boolean conversion bug and add more tests for ?:.
636b62db HLSL: Support vector 'cond ? :' -> EOpMix -> OpSelect.
34718204 HLSL: Non-functional: add vector ? : tests.
13075c61 HLSL: Fix #832: don't require terminating semicolon for cbuffer/tbuffer.
e9f18fd9 Merge pull request #831 from steve-lunarg/isfinite
9e5a19fd HLSL: fix return type for isfinite
ae79697d Merge pull request #827 from amdrexu/feature4
a09eefd8 Non-functional: Fix typos in comments.
6fa17641 HLSL: Emit the OpSource HLSL instruction for HLSL, using new headers.
7962bda3 Merge pull request #825 from steve-lunarg/index-cast
f89ad980 Implement the extension SPV_KHR_16bit_storage
2efd6c6d HLSL: cast bracket dereference index to int type if not.
38a42535 SPV: Move to latest public headers.
07b30c42 Merge pull request #823 from steve-lunarg/tess-coord-size
4f1403ed SPV: Fix #807: use --hlsl-offsets to allow hlsl-style offsets in a buffer.
ccb076ac HLSL: allow non-vec3 tessellation coordinate declarations
6f1e595d Merge branch 'jantlo-cpp11-feat'
d92b5679 Merge branch 'cpp11-feat' of into jantlo-cpp11-feat
a558b265 This refactor the StandAlone and WorkList files in order to use more C++11 features remove the dependencies from OS specific code. Changes:
97cb85c7 PP: Fix #783: Catch end-of-argument expansion in token pasting.
82460b5e HLSL: Fix #805: Support cast of scalars to structures.
5ce1e4af Merge pull request #817 from steve-lunarg/isfinite
c633f644 HLSL: Non-functional: rationalize making constructors.
8df9a486 Merge pull request #812 from steve-lunarg/PatchIO
13975525 Decompose OpIsFinite to avoid capability restrictions
067eb9b4 WIP: HLSL: Support InputPatch variables in patch constant functions
b68b9a8b Merge pull request #808 from steve-lunarg/gs-ep-wrap-fix
08e0c086 HLSL: fix GS implementation for EP wrapping
2184c2f2 Fix #287: pin down the io-array size before checking for out of range index.
6f03bfc7 Merge pull request #815 from steve-lunarg/tess-ds-pcf-order
f38cca3c HLSL: handle PCF input to DS in arbitrary argument position
fa84001a Merge pull request #814 from steve-lunarg/contains
27309f68 Refactor TType::contains* methods (nonfunctional)
c7fd73b7 Merge pull request #811 from steve-lunarg/combine-test
bf1537f4 WIP: HLSL: force uncombined flag off for Buffer<>
f36542f4 Revert "Merge pull request #779 from steve-lunarg/buffer-unsampled-fix"
84a30c8b Merge pull request #774 from steve-lunarg/tess-ctrlpt-pcf
e70fcf2d Merge pull request #810 from steve-lunarg/clip-crash-fix
db2e3b41 HLSL: fix crash on empty sequence node passed to intrinsic expansions
e741249b HLSL: pass tessellation execution modes through to SPIR-V
9ce76553 Merge pull request #797 from steve-lunarg/scalar-length
18958f6c HLSL: Fix #802: Preserve promoted child under ! operator.
7e997e26 HLSL: Implicit bool conversions for conditional expressions and related.
8f9fdc98 HLSL: Add namespace grammar and some basic semantics.
e752f463 HLSL: HS return is arrayed to match SPIR-V semantics
7afe1344 HLSL: strip off array dimension when assign locations of arrayed IO.
194f0f39 HLSL: require tessellation factors to be fixed size arrays
9cee73e0 HLSL: support per control point patch const fn invocation
e434ad92 Fix #809: smear scalar condition in OpSelect for selecting vector operands.
4dc835c3 Non-functional: Round of adding 'const', related to more efficient getFullNamespaceName().
714e58b2 Merge pull request #801 from amdrexu/bugfix
3feac2eb Merge pull request #806 from amdrexu/bugfix2
bcf291a7 Don't emit NV-specific interface members if NV extensions are disabled.
470026f9 HLSL: Fix an issue of frexp().
86e49d17 HLSL: Move frexp() to a separate test file.
aa3c64c2 Fix #800 (mostly): set of Linux warnings.
9fb31ce8 Tests: strengthen the value of test for NV members.
0e737844 Fix #790: Don't emit NV-specific interface members unless enabled by extension.
1ca04c2b HLSL: allow length() on scalars
93750bc0 Merge pull request #796 from steve-lunarg/emptystruct-return-fix
d8e34c51 HLSL: fix crash on empty struct return from entry point
19ea5689 Tests: Update test results.
000c818e HLSL: Allow use of $Global members in between function calls.
7a41f96d HLSL: Implement 'this' keyword.
3778979c HLSL: non-static member functions: track and find active anonymous 'this' scopes and members.
f4ba25e0 HLSL: Non-functional: the symbol field of a token was in practice unused; remove it.
5a839069 Merge pull request #782 from steve-lunarg/builtin-methods-prefix
1dd65ca3 Merge pull request #779 from steve-lunarg/buffer-unsampled-fix
e7d0752a HLSL: use prefix for builtin functions names to avoid namespace collisions
4960baaf HLSL: Basic turn on of non-static member functions.
dfbdd9eb HLSL: Add implicit-this tracking to TFunction.
f3d88bd4 HLSL non-functional: Generalize namespace nesting.
d3947d23 WIP: HLSL: propagate readonly qualifier for buffer types
cf2e7275 WIP: HLSL: Buffer types should be unsampled.
e751bca7 Fix #777: don't parse .suffix if <stage> is provided.
26013595 Merge pull request #776 from amdrexu/bugfix
5e317ffe SPV: Fix unexpected declarations of capability and extension
36b218de HLSL: Fix #771: add inline keyword.
95e736c8 Merge pull request #767 from DragoonX6/master
2dd643ff Merge branch 'TiemoJung-semantic_handling'
2dc50ff3 Merge branch 'semantic_handling' of into TiemoJung-semantic_handling
71c100d7 GLSL output: Removed fixed-size buffer; fixes #769.
c08fb8ab Full stack: properly implement GL_EXT_device_group and GL_EXT_multiview.
78cfba97 Fix location of #defines for core and compatibility profile.
601b7fa4 Revert previous check-in, until knowing what the spec. is and whether the test failure is related.
7a44a31d SPV: Address #759: make ViewIndex and DeviceIndex by 'in', not 'uniform'.
946e0a6d Merge pull request #768 from amdrexu/bugfix
d41a696c HLSL: Additional channel value for textureGatherXXX().
8155934b Fix building on MinGW-w64
b16f7e68 HLSL: Member-functions: capture body token stream for deferred syntax/semantics.
088d52ba HLSL: Non-functional: consolidate function declarator information.
c04c6a40 Merge pull request #762 from LukasBanana/master
54ee28f4 HLSL: Add scoping operator, accept static member functions, and support calling them.
5f12d2f7 HLSL: non-functional: simplify handleBuiltInMethod() to isBuiltInMethod().
1fbc6e6c Added 'GL_core_profile' and 'GL_compatibility_profile' macro definition to preamble.
523e20dc PP: Recognize the '::' token, and translate appropriately to GLSL/HLSL token.
6212e86f Merge pull request #764 from steve-lunarg/imagequery-sign
0b5c2ae7 Preserve signedness in SPV image query ops
757bc874 Merge pull request #763 from steve-lunarg/nullstruct-preservation
4198b8bf WIP: HLSL: preserve empty structures after splitting
6e1d50a7 HLSL: Accept SV_Cull/ClipDistanceN, by refactoring the way semantics are mapped.
229a6f7f Merge pull request #761 from baldurk/vs2010-compile-fixes
79f8bf0d Merge pull request #760 from steve-lunarg/gathercmpred
5d5db80d Compile fixes for VS2010
d00b0261 Enable GatherCmpRed.  Green/Blue/Alpha cannot be supported.
88e88e59 HLSL: Non-functional: Remove dead .length() code.
516d92d3 HLSL: Non-functional: Drive existing method recognition by syntax, not by name.
78388726 HLSL: Non-functional: Don't process function name/parameters before expected a function declaration.
b7201f8e Merge pull request #756 from steve-lunarg/getdimensions-fix
ca71d946 HLSL: Grammar: Generalize accepting a declaration to accept an aggregate of subtrees.
3ce4536a HLSL: use LOD form of ImageQuerySize when needed.
057df293 HLSL: Fix #754: recognize type casts in if-statements separately from declarations.
621c0e3d Merge pull request #755 from steve-lunarg/sb-orderfix
40efe5ce WIP: HLSL: Fix ordering defect if global SB decl after fn param
33f85b6e SPV: Allow push constant buffers to not have an instance name.
789086a8 HLSL: Test for issue #699.
322cb192 Merge pull request #750 from dgkoch/rename_KHX_to_EXT
27ffb299 HLSL: Add 'class' keyword as (so far) synonym for 'struct'.
efc97279 Rename KHX to EXT to match the released specs
c18cae21 Merge pull request #748 from dgkoch/dgkoch_build_fixes2
d9b7a850 More build fixes
854fe247 HLSL: Fix #747: accept 'struct' in front of previously user-defined type name.
0479437a SPV: Fix #739: OpSelect can only operate on scalars and vectors.
173c0c01 Merge pull request #744 from realitix/sanitize_sh_link
9c3f7b60 Merge pull request #746 from dgkoch/dgkoch_build_fixes
efeefd98 Build: Another fix for issue #718: implement the hidden methods of tFinalize.
197082ca Fix build warnings on some platforms
bc3fdcc8 Sanitize ShaderLang.h
3494d71c PP: Fix issue #738: don't assert on characters within a string.
fb22b69f PP: Partially address issue #738: handle premature end of argument when token pasting.
45c1b5b9 Merge pull request #742 from steve-lunarg/f16tof32-typefix
fdbfb65e HLSL: small fix for index type in f16tof32 opcode
5a042c06 GLSL: Fix #741: rationalize per-block vs. per-member offset checking.
69a2c696 Merge pull request #736 from steve-lunarg/structbuffer-params
b67b4a70 PP: Address #737: accept 'h'/'H' floating-point suffix more broadly.
f67f9d7e Merge pull request #740 from steve-lunarg/f16tof32
86b510ef WIP: HLSL: add f16tof32 and f32tof16 decompositions.
42e33c9b SPV: Update SPV header to official Rev. 10 of 1.0, and fix the consequences of doing so.
6c8aaacd SPV: Implement new extensions GL_KHX_device_group and GL_KHX_multiview.
dd8287a1 WIP: HLSL: add structuredbuffer pass by reference in fn params
4a57dced SPV: Handle nested opaque types as function parameters.
74912347 Merge pull request #734 from steve-lunarg/ssbo-reflection
cb34945e Merge pull request #733 from amdrexu/bugfix
932bb5cc Add reflection queries for thread local size and ssbo auto-binding
3e783f9b SPV: Unexpected declarations of capabilities from NV extensions.
2fbe08c7 Merge pull request #725 from steve-lunarg/structurebuffer
5da1f038 HLSL: implement 4 (of 6) structuredbuffer types
c8aed915 Merge pull request #732 from dneto0/fix-overrides
4c64a40d Add override where needed by clang++
8f674e82 Fix issue #676: emit error message on failure to open spv file.
0302bdf0 SPV: Fix #723: construct vectors from matrices.
36852b83 Merge pull request #727 from jekstrand/image-load-formatted
f2b27603 Merge pull request #729 from gwihlidal/master
f44d89a3 Implement GL_EXT_shader_image_load_formatted
6f332f3a Warning fixes
005120cc HLSL - Support for SV_GroupIndex
b0cfcb5c Merge pull request #1 from KhronosGroup/master
b0561d93 Merge pull request #720 from flaviobortot/master
54f3ab7d Merge pull request #728 from MaciejJesionowskiAMD/fix-mismatched-subgroup-vote-string
5227b6de Fix mismatched doc string for SPV_KHR_subgroup_vote
d9502833 Merge pull request #724 from chaoc/master
15017db9 Removed tabs and replaced with spaces. Changed layout for "else if"
df3956c5 Implement NVX_multiview_per_view_attributes
8bb3ee53 added semantic handling and support for remapping variables with semantics
7225a1cb Support align/offset for all versions GLSL/ESSL targeting SPIR-V.
e4e8f7b7 Merge pull request #722 from steve-lunarg/tessellation
9a2733a9 PP, nonfunctional: Properly encapsulate a TokenStream.
858c928a Add basic HS/DS implementation.
b49bb2ca PP, nonfunctional: Remove crufty bit-twiddling of tokens.
8e711b84 Fix issue #708: token pasting within macro argument expansion.
07939886 Merge pull request #707 from KhronosGroup/emit-opSelect
f8d0d8c2 Address issue #718. Should change which warning is generated, hopefully to a better one.
8e6c6cef SPV: Implement specialization constants for ?:.
433e9ff8 SPV: Emit OpSelect when a selection node is simple enough.
509177d1 Merge pull request #685 from KhronosGroup/wrap-entry-point
dd40260b HLSL: don't do a deepCopy() for typedef, as we still want to share the type graph.
65ee230f HLSL: Add tests and refine what decorations are passed through per stage/in/out.
bf47286f HLSL: Move to fine-grained control for defining input/output/uniform IO types.
727b374f HLSL: Build IO types bottom up, as parsed, and cache the original (IO).
88c4464d HLSL: Have loose uniforms also go through the makeTypeNonIo() path.
2c5ab9c8 HLSL: remove pervertex output blocks
fbb58a4e Build: Fix Linux for older compiler: Use TMap instead of TUndorderedMap.
ec712ebe HLSL: fix copies between arrays of structs of builtins, and arrayed builtins.
abd8dca8 HLSL: Make the entry-point shadow function have non-IO params and return.
5d3023af HLSL: Type sanitization: create non-IO types for var decl and fn param/ret
0fe106af AST: Have type deepCopy() preserve type graphs as graphs.
02467d8d HLSL: Wrap the entry-point; need to write 'in' args, and support 'inout' args.
aea3c890 Added --vn option to generate a C header file containing a variable assigned to the hex representation of the shader. This is a standard feature on Microsoft's HLSL compiler and it allows developers to include pre-compiled shaders directly into the code. This option enables "Hex output", so it is NOT required to specify -x as well. The output file name is preserved, so no ".h" extension is added. If you want the output file to have ".h" extension then you have to specify it on the output file name. The generated header file uses the "#pragma once" pragma to avoid multiple inclusions.
18adbdbb Resolve issue #700: allow initializers on struct members.
32fd5d26 Memory/constructor/warning clean-up. Addresses issue #705.
f1aeac89 Merge pull request #711 from eoma/fix-friendly-specialization-name
ad58d454 SPV: Emit names of specialization constants
7e134cdf Merge pull request #706 from Ralith/install-headers
5a074532 Install headers
62c3e400 Fix bug from PR #678: NV_EXTENSIONS deleted implicit array sizing.
82e0e589 Fix issue #693. Ternary operator on void type.
c0904c15 Merge pull request #690 from ligfx/proper_dependencies
2918a2ef README: point to HLSL status issues
24ed24dd Merge pull request #702 from resetnow/master
689490fd SpvBuilder: add const specifier to vector reference arguments
72754864 Merge pull request #694 from mtavenrath/fix_origin_link
7b89e752 Use correct OriginUpperLeft when linking more than one shader.
047a6a49 Merge pull request #696 from amdrexu/bugfix2
ab9e5e9f Merge pull request #695 from amdrexu/bugfix
00d54b44 Semantics: Texture clamp functions are available for fragment shader only.
c708f980 Fix a CMakeLists issue
2043da90 Merge pull request #692 from hrydgard/no-nvextensions-build-fix
bec5fc89 Fix build if NV_EXTENSIONS is not set
64b010f3 Merge pull request #678 from chaoc/stereo_view_rendering
6077a19b CMake: add target_link_libraries internally
771d89fc support SPV_NV_viewport_array2 and SPV_NV_stereo_view_rendering
52fceb08 Merge pull request #689 from mikew-lunarg/master
4e9e400e Fix for not-handled-in-switch warnings
c37f8d6b Merge pull request #683 from rdb/master
a2f0e0e7 Fix compilation with MSVC 2010
22f25d80 Merge pull request #682 from steve-lunarg/split-copy-fix
d3aea5ed Merge pull request #679 from ashwinkolhe/akolhe_spv_khr_subgroup_vote
7dccb151 SPV: Merge pull request #675 from amdrexu/feature
e48b8d74 Infrastructure: remove potential memory leaks.
65cdff9a HLSL: fix dereferencing when copying split structures with arrays
430ef40a Implement new revision of extension GL_AMD_shader_ballot
94dfb7a5 Non-functional: Factor out entry-point logic from handleFunctionDefinition().
c720f3e6 Implement SPV_KHR_subgroup_vote
33dadd12 Fix build break for non-VS.
44251539 Non-functional: Fix round of compiler warnings.
c142c889 Front-ends: Non-functional: Rationalize vector and matrix swizzles.
0a76a187 Merge pull request #656 from TiemoJung/overload_fix
fdf6347f HLSL: Add EOpMatrixSwizzle, selectively decomposed to other ops, for issue #670.
001dfa1c HLSL: matrix swizzle (_12, _m23) syntax, partial semantics.
913e3b68 PP: Clean up and rationalize floating-point-number scanner.
e86fc094 Merge pull request #664 from steve-lunarg/stage-io-fix
dc1a8196 Infrastructure: Support standard build with ENABLE_HLSL set to off.
65d538c8 Infrastructure: Protect against missing built-in symbol table generators.
ce80197c Merge pull request #663 from KhronosGroup/full-include-semantics
eaecfe71 Merge pull request #668 from slime73/DisableHLSL
ff21a25b Change disabled-by-default DISABLE_HLSL option to enabled-by-default ENABLE_HLSL.
46d54284 WIP: add other builtins to interstage IO
84eabf7e Add a CMake option to disable compilation of HLSL input support.
5d89d4d4 Merge pull request #667 from slime73/Compiler-Warnings
5f316d9b Reorder initializer fields to match variable declaration order (or vice versa) for several class constructors.
844dd45d Add a virtual destructor to a class which has virtual methods.
7d39ad58 Mark an overriden method in a subclass with ‘override’.
facde2c8 PP #include: address PR feedback.
63204c25 External interface change: PP: Full <> and "" semantics for the Includer.
25086025 PP #include non-functional: consistent notation for "header" and "header name".
927608b3 Non-functional: White space after "//", mostly for copyrights.
ecba76fe Non-Functional: Whitespace, comments, replace accidentally deleted comment.
3dd32293 Merge pull request #661 from KhronosGroup/fix-include-error-paths
1b1defd6 PP: #include: simplify the different paths out of #include.
28d31335 PP: #include: add names to error messages, so that lexical analysis can be tested.
64285c9e Non-functional: Very minor clean up.
acb9076a Merge pull request #650 from steve-lunarg/lvalue-swizzle-fix
085b8334 HLSL: Fix issue #658: Don't adopt initializer constness from declaration.
bf9a2f30 Merge pull request #648 from steve-lunarg/type-identifiers
ddfbbe26 Merge pull request #632 from steve-lunarg/structure-splitting
5abd308e Merge pull request #659 from steve-lunarg/d3dcolortoubyte4
c4ed9500 Merge pull request #647 from steve-lunarg/default-fn-params
7ea7ff4c Add EOpD3DCOLORtoUBYTE4 decomposition
affc2667 PP: Recognize <> style #include header names. I.e., #include <header-name>.
cd6829ba HLSL: allow destination swizzles when writing RWTexture/RWBuffer objects.
faa720f1 PP: Fix issue #426, recover from bad-source macro expansion.
bc5196c0 SPV: Fix issue #369, don't support gl_NumSamples -> SPIR-V.
f37f4d23 HLSL: Fix issue #646: map SV_DispatchThreadID -> GlobalInvocationID.
84e59203 updates overload handling to be more careful when allowing overloads over texture types
aa6d5629 HLSL: Handle const with no initializer. Fixes issue #651.
53864846 HLSL: Support empty {} initializers for arrays and scalars.
26d31453 HLSL default function parameters
5ca85ad9 HLSL: allow scalar type keywords as identifiers, and add half type support.
132d3318 HLSL: struct splitting: assignments of hierarchical split types
a2e75310 HLSL: inter-stage structure splitting.
807a0d9e Merge pull request #640 from chaoc/modify-shader-ballot
f48faec3 PP: Non-functional: Make a proper class out of the atom <-> string mapping.
f200da86 Modify shader ballot extension by adding OpSubgroupReadInvocationKHR
224b1f73 PP: Support operator creation with token pasting.
0c4b7c93 PP: Rationalize names of tokens.
2dcdda92 Merge pull request #641 from chaoc/passthrough
906b0a3e Merge pull request #644 from hrydgard/override-warning-fixes
9a931b39 Fix a large number of warnings about inconsistent usage of 'override' produced by clang
907aabb6 PP: Non-functional: Only use string <-> atom mapping when needed.
54af2de7 PP: Non-functional: rationalize TPpToken.
1fbb9c14 PP: Non-functional: clean up, simplify, completely identical operation.
6e5acae1 Add support for SPV_NV_geometry_shader_passthrough
3c264ce8 Merge pull request #639 from hrydgard/master
7a21a115 Merge pull request #638 from chaoc/master
b8387c87 PP: Non-functional: Remove custom allocator and related improvements.
868746ad Add option to make it possible not to build the executables
bfff871d PP: Add missing i64val code.
0ad6a4e6 Add support for SPV_NV_sample_mask_override_coverage
7583ed73 Merge remote-tracking branch 'refs/remotes/KhronosGroup/master'
432576fd Build: Fix #633, add missing overrides.
0955b1cb Merge pull request #637 from KhronosGroup/token-paste
e6cbc5b1 Merge pull request #624 from steve-lunarg/remapper-strip-removed
4ba444b6 Merge pull request #635 from steve-lunarg/sample-fix-2
059d46ee Merge pull request #625 from jbeich/gcc6
d485e0b7 PP: Implement token pasting for PP identifiers.
a64ed3eb HLSL: allow "sample" in expressions.
abf50579 Fix comment typo.
1e275c84 HLSL: More robust handling of bad shader input, catching a few more things.
dca93d6b Merge pull request #629 from null77/fix-unicode
cebd97eb Change unicode dash to ASCII.
95abd284 Merge pull request #628 from null77/fix-cast-warn
3ec327c5 Fix size_t to int cast warnings.
20f01e7f Fix last commit; EOptionKeepUncalled incorrect enum bug.
297754cf Remapper: remove debug info for IDs stripped in other passes
906cc218 Linker: Eliminate uncalled functions, because they can be ill-defined.
bf6d7f43 Linker: Track the mangled entry-point name along with the non-mangled one.
4b6ce415 GLSL Linker: Track entry point across compilation units.
1bcb254a Add missing header and drop duplicate one
6a60c2f9 Linker: Walk the call graph to report an error on missing bodies.
e795cc91 Merge pull request #621 from steve-lunarg/recursive-flattening
302e619e Merge pull request #619 from steve-lunarg/opcode-specific-promote
56b45476 Merge pull request #620 from fjhenigman/foo
a2b01a0d HLSL: Recursive composite flattening
05f75142 HLSL: opcode specific promotion rules for interlocked ops
8dcf2029 GLSL: Always define TShader::~Includer().
b56f4ac7 Merge pull request #615 from dneto0/consistent-location-for-test-files
9df6aa53 GLSL: Allow desktop shaders to call functions from outside main().
ec2e27ad Merge pull request #613 from Corillian/hlslpreprocess
5cc92c56 runtests should refer to test files in current directory
205dc4e4 Fixed processing #include's when preprocessing HLSL
fb06e955 Don't print the "Linked stage" message unless the AST is being dumped.
09512cbd Merge branch 'steve-lunarg-intrinsic-promotion'
21b11f4c Merge branch 'intrinsic-promotion' of into steve-lunarg-intrinsic-promotion
41be1cbe Merge pull request #604 from steve-lunarg/entry-rename-2
f1e0c871 allow renaming of shader entry point when creating SPIR-V
ef33ec09 HLSL: add intrinsic function implicit promotions

Change-Id: I295258005685b14d53ddbc2d516cb7d69e9b20cd
Testing: on Linux, unit tests on Windows