[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

vulkan: Changes to 'debian-unstable'



 .gitattributes                                                                        |   16 
 .travis.yml                                                                           |    9 
 BUILD.md                                                                              |    6 
 CMakeLists.txt                                                                        |   59 
 COPYRIGHT.txt                                                                         |  262 
 README.md                                                                             |    3 
 debian/changelog                                                                      |    6 
 demos/CMakeLists.txt                                                                  |    7 
 demos/android/cube-with-layers/AndroidManifest.xml                                    |   50 
 demos/android/cube/AndroidManifest.xml                                                |   50 
 demos/android/jni/Application.mk                                                      |   44 
 demos/cube.c                                                                          |   25 
 demos/cube.cpp                                                                        |   29 
 demos/cube.vcxproj.user                                                               |   22 
 demos/smoke/android/gradlew.bat                                                       |  180 
 demos/vulkaninfo.c                                                                    |   28 
 demos/vulkaninfo.vcxproj.user                                                         |   22 
 external/glslang/.appveyor.yml                                                        |    1 
 external/glslang/.gitignore                                                           |    1 
 external/glslang/.travis.yml                                                          |   16 
 external/glslang/CMakeLists.txt                                                       |   18 
 external/glslang/External/CMakeLists.txt                                              |    8 
 external/glslang/README.md                                                            |   14 
 external/glslang/SPIRV/CMakeLists.txt                                                 |   11 
 external/glslang/SPIRV/GLSL.ext.AMD.h                                                 |   10 
 external/glslang/SPIRV/GlslangToSpv.cpp                                               |  261 
 external/glslang/SPIRV/GlslangToSpv.h                                                 |    5 
 external/glslang/SPIRV/SPVRemapper.cpp                                                |  178 
 external/glslang/SPIRV/SPVRemapper.h                                                  |   12 
 external/glslang/SPIRV/SpvBuilder.cpp                                                 |    5 
 external/glslang/SPIRV/doc.cpp                                                        |   13 
 external/glslang/StandAlone/DirStackFileIncluder.h                                    |    4 
 external/glslang/StandAlone/StandAlone.cpp                                            |  232 
 external/glslang/Test/100samplerExternal.frag                                         |   41 
 external/glslang/Test/300samplerExternal.frag                                         |   41 
 external/glslang/Test/baseLegalResults/hlsl.aliasOpaque.frag.out                      |   50 
 external/glslang/Test/baseLegalResults/hlsl.flattenOpaque.frag.out                    |   65 
 external/glslang/Test/baseLegalResults/hlsl.flattenOpaqueInit.vert.out                |   49 
 external/glslang/Test/baseLegalResults/hlsl.flattenOpaqueInitMix.vert.out             |   49 
 external/glslang/Test/baseLegalResults/hlsl.flattenSubset.frag.out                    |   48 
 external/glslang/Test/baseResults/100samplerExternal.frag.out                         |  172 
 external/glslang/Test/baseResults/150.tesc.out                                        |    2 
 external/glslang/Test/baseResults/300samplerExternal.frag.out                         |  197 
 external/glslang/Test/baseResults/420.tese.out                                        |    2 
 external/glslang/Test/baseResults/constFoldIntMin.frag.out                            |   51 
 external/glslang/Test/baseResults/cppDeepNest.frag.out                                |   20 
 external/glslang/Test/baseResults/cppIntMinOverNegativeOne.frag.out                   |   14 
 external/glslang/Test/baseResults/glsl.entryPointRename.vert.bad.out                  |   45 
 external/glslang/Test/baseResults/glsl.entryPointRename.vert.out                      |   43 
 external/glslang/Test/baseResults/glsl.entryPointRename2.vert.out                     |    4 
 external/glslang/Test/baseResults/glspv.version.frag.out                              |    2 
 external/glslang/Test/baseResults/hlsl.aliasOpaque.frag.out                           |  113 
 external/glslang/Test/baseResults/hlsl.amend.frag.out                                 |    2 
 external/glslang/Test/baseResults/hlsl.array.flatten.frag.out                         |  313 
 external/glslang/Test/baseResults/hlsl.array.frag.out                                 |  612 
 external/glslang/Test/baseResults/hlsl.array.implicit-size.frag.out                   |    2 
 external/glslang/Test/baseResults/hlsl.array.multidim.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.assoc.frag.out                                 |    2 
 external/glslang/Test/baseResults/hlsl.attribute.expression.comp.out                  |    2 
 external/glslang/Test/baseResults/hlsl.attribute.frag.out                             |    2 
 external/glslang/Test/baseResults/hlsl.attributeC11.frag.out                          |  176 
 external/glslang/Test/baseResults/hlsl.attributeGlobalBuffer.frag.out                 |  109 
 external/glslang/Test/baseResults/hlsl.basic.comp.out                                 |    2 
 external/glslang/Test/baseResults/hlsl.basic.geom.out                                 |    2 
 external/glslang/Test/baseResults/hlsl.boolConv.vert.out                              |    2 
 external/glslang/Test/baseResults/hlsl.buffer.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.calculatelod.dx10.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.cast.frag.out                                  |    2 
 external/glslang/Test/baseResults/hlsl.charLit.vert.out                               |    2 
 external/glslang/Test/baseResults/hlsl.clip.frag.out                                  |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-1.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-1.geom.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-1.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-2.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-2.geom.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-2.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-3.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-3.geom.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-3.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-4.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-4.geom.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-4.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-5.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-5.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-6.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-6.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-7.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-7.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-8.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-8.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-9.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.clipdistance-9.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.comparison.vec.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.conditional.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.constantbuffer.frag.out                        |    8 
 external/glslang/Test/baseResults/hlsl.constructArray.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.constructexpr.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.constructimat.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.dashI.vert.out                                 |    2 
 external/glslang/Test/baseResults/hlsl.deadFunctionMissingBody.vert.out               |    2 
 external/glslang/Test/baseResults/hlsl.depthGreater.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.depthLess.frag.out                             |    2 
 external/glslang/Test/baseResults/hlsl.discard.frag.out                               |    2 
 external/glslang/Test/baseResults/hlsl.doLoop.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.domain.1.tese.out                              |    2 
 external/glslang/Test/baseResults/hlsl.domain.2.tese.out                              |    2 
 external/glslang/Test/baseResults/hlsl.domain.3.tese.out                              |    2 
 external/glslang/Test/baseResults/hlsl.emptystruct.init.vert.out                      |    2 
 external/glslang/Test/baseResults/hlsl.emptystructreturn.frag.out                     |    4 
 external/glslang/Test/baseResults/hlsl.emptystructreturn.vert.out                     |    4 
 external/glslang/Test/baseResults/hlsl.entry-in.frag.out                              |    2 
 external/glslang/Test/baseResults/hlsl.entry-out.frag.out                             |    2 
 external/glslang/Test/baseResults/hlsl.entry.rename.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.explicitDescriptorSet-2.frag.out               |    2 
 external/glslang/Test/baseResults/hlsl.explicitDescriptorSet.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.flatten.return.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.flattenOpaque.frag.out                         |  152 
 external/glslang/Test/baseResults/hlsl.flattenOpaqueInit.vert.out                     |  213 
 external/glslang/Test/baseResults/hlsl.flattenOpaqueInitMix.vert.out                  |  155 
 external/glslang/Test/baseResults/hlsl.flattenSubset.frag.out                         |  218 
 external/glslang/Test/baseResults/hlsl.flattenSubset2.frag.out                        |  207 
 external/glslang/Test/baseResults/hlsl.float1.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.float4.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.forLoop.frag.out                               |    2 
 external/glslang/Test/baseResults/hlsl.fraggeom.frag.out                              |    2 
 external/glslang/Test/baseResults/hlsl.gather.array.dx10.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.gather.basic.dx10.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.gather.basic.dx10.vert.out                     |    2 
 external/glslang/Test/baseResults/hlsl.gather.offset.dx10.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.gather.offsetarray.dx10.frag.out               |    2 
 external/glslang/Test/baseResults/hlsl.gatherRGBA.array.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.gatherRGBA.basic.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.gatherRGBA.offset.dx10.frag.out                |    2 
 external/glslang/Test/baseResults/hlsl.gatherRGBA.offsetarray.dx10.frag.out           |    2 
 external/glslang/Test/baseResults/hlsl.gathercmpRGBA.offset.dx10.frag.out             |  459 
 external/glslang/Test/baseResults/hlsl.getdimensions.dx10.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.getdimensions.dx10.vert.out                    |    2 
 external/glslang/Test/baseResults/hlsl.getdimensions.rw.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.getsampleposition.dx10.frag.out                |    2 
 external/glslang/Test/baseResults/hlsl.global-const-init.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.hlslOffset.vert.out                            |    2 
 external/glslang/Test/baseResults/hlsl.hull.1.tesc.out                                |    6 
 external/glslang/Test/baseResults/hlsl.hull.2.tesc.out                                |    6 
 external/glslang/Test/baseResults/hlsl.hull.3.tesc.out                                |    6 
 external/glslang/Test/baseResults/hlsl.hull.4.tesc.out                                |  681 
 external/glslang/Test/baseResults/hlsl.hull.5.tesc.out                                |  190 
 external/glslang/Test/baseResults/hlsl.hull.ctrlpt-1.tesc.out                         |    6 
 external/glslang/Test/baseResults/hlsl.hull.ctrlpt-2.tesc.out                         |   12 
 external/glslang/Test/baseResults/hlsl.hull.void.tesc.out                             |    6 
 external/glslang/Test/baseResults/hlsl.identifier.sample.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.if.frag.out                                    |    2 
 external/glslang/Test/baseResults/hlsl.implicitBool.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.include.vert.out                               |    2 
 external/glslang/Test/baseResults/hlsl.inf.vert.out                                   |    2 
 external/glslang/Test/baseResults/hlsl.init.frag.out                                  |    2 
 external/glslang/Test/baseResults/hlsl.init2.frag.out                                 |    2 
 external/glslang/Test/baseResults/hlsl.inoutquals.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.intrinsic.frexp.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.intrinsic.frexp.vert.out                       |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.barriers.comp.out                   |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.comp.out                            |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.d3dcolortoubyte4.frag.out           |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.double.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.evalfns.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.f1632.frag.out                      |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.f3216.frag.out                      |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.frag.out                            |13027 ++++----
 external/glslang/Test/baseResults/hlsl.intrinsics.lit.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.negative.comp.out                   |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.negative.vert.out                   |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.promote.down.frag.out               |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.promote.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.promote.outputs.frag.out            |    2 
 external/glslang/Test/baseResults/hlsl.intrinsics.vert.out                            |    2 
 external/glslang/Test/baseResults/hlsl.isfinite.frag.out                              |    2 
 external/glslang/Test/baseResults/hlsl.layout.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.load.2dms.dx10.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.load.array.dx10.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.load.basic.dx10.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.load.basic.dx10.vert.out                       |    2 
 external/glslang/Test/baseResults/hlsl.load.buffer.dx10.frag.out                      |    2 
 external/glslang/Test/baseResults/hlsl.load.buffer.float.dx10.frag.out                |    2 
 external/glslang/Test/baseResults/hlsl.load.offset.dx10.frag.out                      |    2 
 external/glslang/Test/baseResults/hlsl.load.offsetarray.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.load.rwbuffer.dx10.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.load.rwtexture.array.dx10.frag.out             |    2 
 external/glslang/Test/baseResults/hlsl.load.rwtexture.dx10.frag.out                   |    2 
 external/glslang/Test/baseResults/hlsl.localStructuredBuffer.comp.out                 |   64 
 external/glslang/Test/baseResults/hlsl.logical.binary.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.logical.binary.vec.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.logical.unary.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.logicalConvert.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.loopattr.frag.out                              |    2 
 external/glslang/Test/baseResults/hlsl.matNx1.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.matType.bool.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.matType.frag.out                               |    2 
 external/glslang/Test/baseResults/hlsl.matType.int.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.matpack-1.frag.out                             |    2 
 external/glslang/Test/baseResults/hlsl.matpack-pragma.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.matrixSwizzle.vert.out                         |    2 
 external/glslang/Test/baseResults/hlsl.matrixindex.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.max.frag.out                                   |    2 
 external/glslang/Test/baseResults/hlsl.memberFunCall.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.mintypes.frag.out                              |    2 
 external/glslang/Test/baseResults/hlsl.mip.operator.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.multiDescriptorSet.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.multiEntry.vert.out                            |    2 
 external/glslang/Test/baseResults/hlsl.multiReturn.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.namespace.frag.out                             |    2 
 external/glslang/Test/baseResults/hlsl.nonint-index.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.nonstaticMemberFunction.frag.out               |    2 
 external/glslang/Test/baseResults/hlsl.numericsuffixes.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.numthreads.comp.out                            |    2 
 external/glslang/Test/baseResults/hlsl.opaque-type-bug.frag.out                       |  112 
 external/glslang/Test/baseResults/hlsl.overload.frag.out                              |    2 
 external/glslang/Test/baseResults/hlsl.params.default.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.partialFlattenLocal.vert.out                   |  366 
 external/glslang/Test/baseResults/hlsl.partialFlattenMixed.vert.out                   |  150 
 external/glslang/Test/baseResults/hlsl.partialInit.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.pp.line.frag.out                               |    2 
 external/glslang/Test/baseResults/hlsl.pp.vert.out                                    |    2 
 external/glslang/Test/baseResults/hlsl.precedence.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.precedence2.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.precise.frag.out                               |    2 
 external/glslang/Test/baseResults/hlsl.preprocessor.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.promote.atomic.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.promote.binary.frag.out                        |    2 
 external/glslang/Test/baseResults/hlsl.promote.vec1.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.promotions.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.rw.atomics.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.rw.bracket.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.rw.register.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.rw.scalar.bracket.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.rw.swizzle.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.rw.vec2.bracket.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.sample.array.dx10.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.sample.basic.dx10.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.sample.offset.dx10.frag.out                    |    2 
 external/glslang/Test/baseResults/hlsl.sample.offsetarray.dx10.frag.out               |    2 
 external/glslang/Test/baseResults/hlsl.sample.sub-vec4.dx10.frag.out                  |    2 
 external/glslang/Test/baseResults/hlsl.samplebias.array.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.samplebias.basic.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.samplebias.offset.dx10.frag.out                |    2 
 external/glslang/Test/baseResults/hlsl.samplebias.offsetarray.dx10.frag.out           |    2 
 external/glslang/Test/baseResults/hlsl.samplecmp.array.dx10.frag.out                  |  581 
 external/glslang/Test/baseResults/hlsl.samplecmp.basic.dx10.frag.out                  |  557 
 external/glslang/Test/baseResults/hlsl.samplecmp.dualmode.frag.out                    |  157 
 external/glslang/Test/baseResults/hlsl.samplecmp.negative.frag.out                    |  104 
 external/glslang/Test/baseResults/hlsl.samplecmp.offset.dx10.frag.out                 |  448 
 external/glslang/Test/baseResults/hlsl.samplecmp.offsetarray.dx10.frag.out            |  472 
 external/glslang/Test/baseResults/hlsl.samplecmplevelzero.array.dx10.frag.out         |  583 
 external/glslang/Test/baseResults/hlsl.samplecmplevelzero.basic.dx10.frag.out         |  559 
 external/glslang/Test/baseResults/hlsl.samplecmplevelzero.offset.dx10.frag.out        |  450 
 external/glslang/Test/baseResults/hlsl.samplecmplevelzero.offsetarray.dx10.frag.out   |  474 
 external/glslang/Test/baseResults/hlsl.samplegrad.array.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.samplegrad.basic.dx10.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.samplegrad.basic.dx10.vert.out                 |    2 
 external/glslang/Test/baseResults/hlsl.samplegrad.offset.dx10.frag.out                |    2 
 external/glslang/Test/baseResults/hlsl.samplegrad.offsetarray.dx10.frag.out           |    2 
 external/glslang/Test/baseResults/hlsl.samplelevel.array.dx10.frag.out                |    2 
 external/glslang/Test/baseResults/hlsl.samplelevel.basic.dx10.frag.out                |    2 
 external/glslang/Test/baseResults/hlsl.samplelevel.basic.dx10.vert.out                |    2 
 external/glslang/Test/baseResults/hlsl.samplelevel.offset.dx10.frag.out               |    2 
 external/glslang/Test/baseResults/hlsl.samplelevel.offsetarray.dx10.frag.out          |    2 
 external/glslang/Test/baseResults/hlsl.scalar-length.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.scalar2matrix.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.scalarCast.vert.out                            |    2 
 external/glslang/Test/baseResults/hlsl.scope.frag.out                                 |    2 
 external/glslang/Test/baseResults/hlsl.semantic-1.vert.out                            |    2 
 external/glslang/Test/baseResults/hlsl.semantic.geom.out                              |    2 
 external/glslang/Test/baseResults/hlsl.semantic.vert.out                              |    2 
 external/glslang/Test/baseResults/hlsl.semicolons.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.shapeConv.frag.out                             |    2 
 external/glslang/Test/baseResults/hlsl.shapeConvRet.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.shift.per-set.frag.out                         |  225 
 external/glslang/Test/baseResults/hlsl.sin.frag.out                                   |    2 
 external/glslang/Test/baseResults/hlsl.staticMemberFunction.frag.out                  |    2 
 external/glslang/Test/baseResults/hlsl.string.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.stringtoken.frag.out                           |    2 
 external/glslang/Test/baseResults/hlsl.struct.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.struct.split-1.vert.out                        |    2 
 external/glslang/Test/baseResults/hlsl.struct.split.array.geom.out                    |    2 
 external/glslang/Test/baseResults/hlsl.struct.split.assign.frag.out                   |    2 
 external/glslang/Test/baseResults/hlsl.struct.split.call.vert.out                     |    2 
 external/glslang/Test/baseResults/hlsl.struct.split.nested.geom.out                   |    2 
 external/glslang/Test/baseResults/hlsl.struct.split.trivial.geom.out                  |    2 
 external/glslang/Test/baseResults/hlsl.struct.split.trivial.vert.out                  |    2 
 external/glslang/Test/baseResults/hlsl.structIoFourWay.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.structStructName.frag.out                      |    2 
 external/glslang/Test/baseResults/hlsl.structarray.flatten.frag.out                   |  236 
 external/glslang/Test/baseResults/hlsl.structarray.flatten.geom.out                   |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.append.fn.frag.out                |  120 
 external/glslang/Test/baseResults/hlsl.structbuffer.append.frag.out                   |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.atomics.frag.out                  |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.byte.frag.out                     |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.coherent.frag.out                 |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.floatidx.comp.out                 |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.fn.frag.out                       |  162 
 external/glslang/Test/baseResults/hlsl.structbuffer.fn2.comp.out                      |   90 
 external/glslang/Test/baseResults/hlsl.structbuffer.frag.out                          |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.incdec.frag.out                   |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.rw.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.structbuffer.rwbyte.frag.out                   |    2 
 external/glslang/Test/baseResults/hlsl.structin.vert.out                              |    2 
 external/glslang/Test/baseResults/hlsl.subpass.frag.out                               |  777 
 external/glslang/Test/baseResults/hlsl.switch.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.swizzle.frag.out                               |    2 
 external/glslang/Test/baseResults/hlsl.synthesizeInput.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.target.frag.out                                |    2 
 external/glslang/Test/baseResults/hlsl.targetStruct1.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.targetStruct2.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.templatetypes.frag.out                         |    2 
 external/glslang/Test/baseResults/hlsl.texture.struct.frag.out                        |  449 
 external/glslang/Test/baseResults/hlsl.texture.subvec4.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.this.frag.out                                  |    2 
 external/glslang/Test/baseResults/hlsl.tx.bracket.frag.out                            |    2 
 external/glslang/Test/baseResults/hlsl.tx.overload.frag.out                           |   87 
 external/glslang/Test/baseResults/hlsl.type.half.frag.out                             |    2 
 external/glslang/Test/baseResults/hlsl.type.identifier.frag.out                       |    2 
 external/glslang/Test/baseResults/hlsl.typeGraphCopy.vert.out                         |    2 
 external/glslang/Test/baseResults/hlsl.typedef.frag.out                               |    2 
 external/glslang/Test/baseResults/hlsl.void.frag.out                                  |    2 
 external/glslang/Test/baseResults/hlsl.whileLoop.frag.out                             |    2 
 external/glslang/Test/baseResults/invalidSwizzle.vert.out                             |   38 
 external/glslang/Test/baseResults/numeral.frag.out                                    |    6 
 external/glslang/Test/baseResults/overlongLiteral.frag.out                            |   19 
 external/glslang/Test/baseResults/remap.basic.dcefunc.frag.out                        |    2 
 external/glslang/Test/baseResults/remap.basic.everything.frag.out                     |    2 
 external/glslang/Test/baseResults/remap.basic.none.frag.out                           |    2 
 external/glslang/Test/baseResults/remap.basic.strip.frag.out                          |    2 
 external/glslang/Test/baseResults/remap.hlsl.sample.basic.everything.frag.out         |    2 
 external/glslang/Test/baseResults/remap.hlsl.sample.basic.none.frag.out               |    2 
 external/glslang/Test/baseResults/remap.hlsl.sample.basic.strip.frag.out              |    2 
 external/glslang/Test/baseResults/remap.hlsl.templatetypes.everything.frag.out        |    2 
 external/glslang/Test/baseResults/remap.hlsl.templatetypes.none.frag.out              |    2 
 external/glslang/Test/baseResults/remap.if.everything.frag.out                        |    2 
 external/glslang/Test/baseResults/remap.if.none.frag.out                              |    2 
 external/glslang/Test/baseResults/remap.invalid-spirv-1.out                           |    1 
 external/glslang/Test/baseResults/remap.invalid-spirv-2.out                           |    1 
 external/glslang/Test/baseResults/remap.similar_1a.everything.frag.out                |    2 
 external/glslang/Test/baseResults/remap.similar_1a.none.frag.out                      |    2 
 external/glslang/Test/baseResults/remap.similar_1b.everything.frag.out                |    2 
 external/glslang/Test/baseResults/remap.similar_1b.none.frag.out                      |    2 
 external/glslang/Test/baseResults/remap.specconst.comp.out                            |    2 
 external/glslang/Test/baseResults/remap.switch.everything.frag.out                    |    2 
 external/glslang/Test/baseResults/remap.switch.none.frag.out                          |    2 
 external/glslang/Test/baseResults/remap.uniformarray.everything.frag.out              |    2 
 external/glslang/Test/baseResults/remap.uniformarray.none.frag.out                    |    2 
 external/glslang/Test/baseResults/spv.100ops.frag.out                                 |    2 
 external/glslang/Test/baseResults/spv.130.frag.out                                    |    2 
 external/glslang/Test/baseResults/spv.140.frag.out                                    |    2 
 external/glslang/Test/baseResults/spv.150.geom.out                                    |    2 
 external/glslang/Test/baseResults/spv.150.vert.out                                    |    2 
 external/glslang/Test/baseResults/spv.300BuiltIns.vert.out                            |    2 
 external/glslang/Test/baseResults/spv.300layout.frag.out                              |    2 
 external/glslang/Test/baseResults/spv.300layout.vert.out                              |    2 
 external/glslang/Test/baseResults/spv.300layoutp.vert.out                             |    2 
 external/glslang/Test/baseResults/spv.310.bitcast.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.310.comp.out                                    |    2 
 external/glslang/Test/baseResults/spv.330.geom.out                                    |    2 
 external/glslang/Test/baseResults/spv.400.frag.out                                    |    2 
 external/glslang/Test/baseResults/spv.400.tesc.out                                    |    2 
 external/glslang/Test/baseResults/spv.400.tese.out                                    |    2 
 external/glslang/Test/baseResults/spv.420.geom.out                                    |    2 
 external/glslang/Test/baseResults/spv.430.frag.out                                    |    2 
 external/glslang/Test/baseResults/spv.430.vert.out                                    |    2 
 external/glslang/Test/baseResults/spv.450.geom.out                                    |    2 
 external/glslang/Test/baseResults/spv.450.noRedecl.tesc.out                           |    2 
 external/glslang/Test/baseResults/spv.450.tesc.out                                    |    2 
 external/glslang/Test/baseResults/spv.460.comp.out                                    |    2 
 external/glslang/Test/baseResults/spv.460.frag.out                                    |    2 
 external/glslang/Test/baseResults/spv.460.vert.out                                    |    2 
 external/glslang/Test/baseResults/spv.AofA.frag.out                                   |    2 
 external/glslang/Test/baseResults/spv.GeometryShaderPassthrough.geom.out              |    2 
 external/glslang/Test/baseResults/spv.OVR_multiview.vert.out                          |    2 
 external/glslang/Test/baseResults/spv.Operations.frag.out                             |    2 
 external/glslang/Test/baseResults/spv.accessChain.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.aggOps.frag.out                                 |    2 
 external/glslang/Test/baseResults/spv.always-discard.frag.out                         |    2 
 external/glslang/Test/baseResults/spv.always-discard2.frag.out                        |    2 
 external/glslang/Test/baseResults/spv.arbPostDepthCoverage.frag.out                   |    2 
 external/glslang/Test/baseResults/spv.atomic.comp.out                                 |  139 
 external/glslang/Test/baseResults/spv.atomicInt64.comp.out                            |  215 
 external/glslang/Test/baseResults/spv.bitCast.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.bool.vert.out                                   |    2 
 external/glslang/Test/baseResults/spv.boolInBlock.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.branch-return.vert.out                          |    2 
 external/glslang/Test/baseResults/spv.buffer.autoassign.frag.out                      |    2 
 external/glslang/Test/baseResults/spv.conditionalDiscard.frag.out                     |    2 
 external/glslang/Test/baseResults/spv.conversion.frag.out                             |    2 
 external/glslang/Test/baseResults/spv.dataOut.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.dataOutIndirect.frag.out                        |    2 
 external/glslang/Test/baseResults/spv.dataOutIndirect.vert.out                        |    2 
 external/glslang/Test/baseResults/spv.debugInfo.frag.out                              |    2 
 external/glslang/Test/baseResults/spv.deepRvalue.frag.out                             |    2 
 external/glslang/Test/baseResults/spv.depthOut.frag.out                               |    2 
 external/glslang/Test/baseResults/spv.deviceGroup.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.discard-dce.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.do-simple.vert.out                              |    2 
 external/glslang/Test/baseResults/spv.do-while-continue-break.vert.out                |    2 
 external/glslang/Test/baseResults/spv.doWhileLoop.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.double.comp.out                                 |    2 
 external/glslang/Test/baseResults/spv.drawParams.vert.out                             |    2 
 external/glslang/Test/baseResults/spv.earlyReturnDiscard.frag.out                     |    2 
 external/glslang/Test/baseResults/spv.extPostDepthCoverage.frag.out                   |    2 
 external/glslang/Test/baseResults/spv.float16.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.flowControl.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.for-complex-condition.vert.out                  |    2 
 external/glslang/Test/baseResults/spv.for-continue-break.vert.out                     |    2 
 external/glslang/Test/baseResults/spv.for-nobody.vert.out                             |    2 
 external/glslang/Test/baseResults/spv.for-notest.vert.out                             |    2 
 external/glslang/Test/baseResults/spv.for-simple.vert.out                             |    2 
 external/glslang/Test/baseResults/spv.forLoop.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.forwardFun.frag.out                             |    2 
 external/glslang/Test/baseResults/spv.functionCall.frag.out                           |    2 
 external/glslang/Test/baseResults/spv.functionNestedOpaque.vert.out                   |    2 
 external/glslang/Test/baseResults/spv.functionSemantics.frag.out                      |    2 
 external/glslang/Test/baseResults/spv.glFragColor.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.glsl.register.autoassign.frag.out               |    2 
 external/glslang/Test/baseResults/spv.glsl.register.noautoassign.frag.out             |    2 
 external/glslang/Test/baseResults/spv.hlslDebugInfo.frag.out                          |    2 
 external/glslang/Test/baseResults/spv.hlslOffsets.vert.out                            |    2 
 external/glslang/Test/baseResults/spv.image.frag.out                                  |    2 
 external/glslang/Test/baseResults/spv.imageLoadStoreLod.frag.out                      |    2 
 external/glslang/Test/baseResults/spv.int16.frag.out                                  |    2 
 external/glslang/Test/baseResults/spv.int64.frag.out                                  |    2 
 external/glslang/Test/baseResults/spv.intOps.vert.out                                 |    2 
 external/glslang/Test/baseResults/spv.interpOps.frag.out                              |    2 
 external/glslang/Test/baseResults/spv.layoutNested.vert.out                           |    2 
 external/glslang/Test/baseResults/spv.length.frag.out                                 |    2 
 external/glslang/Test/baseResults/spv.localAggregates.frag.out                        |    2 
 external/glslang/Test/baseResults/spv.loops.frag.out                                  |    2 
 external/glslang/Test/baseResults/spv.loopsArtificial.frag.out                        |    2 
 external/glslang/Test/baseResults/spv.matFun.vert.out                                 |    2 
 external/glslang/Test/baseResults/spv.matrix.frag.out                                 |    2 
 external/glslang/Test/baseResults/spv.matrix2.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.memoryQualifier.frag.out                        |    2 
 external/glslang/Test/baseResults/spv.merge-unreachable.frag.out                      |    2 
 external/glslang/Test/baseResults/spv.multiStruct.comp.out                            |    2 
 external/glslang/Test/baseResults/spv.multiStructFuncall.frag.out                     |    2 
 external/glslang/Test/baseResults/spv.multiView.frag.out                              |    2 
 external/glslang/Test/baseResults/spv.multiviewPerViewAttributes.tesc.out             |    2 
 external/glslang/Test/baseResults/spv.multiviewPerViewAttributes.vert.out             |    2 
 external/glslang/Test/baseResults/spv.newTexture.frag.out                             |    2 
 external/glslang/Test/baseResults/spv.noBuiltInLoc.vert.out                           |    2 
 external/glslang/Test/baseResults/spv.noDeadDecorations.vert.out                      |    2 
 external/glslang/Test/baseResults/spv.noWorkgroup.comp.out                            |    2 
 external/glslang/Test/baseResults/spv.nonSquare.vert.out                              |    2 
 external/glslang/Test/baseResults/spv.offsets.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.paramMemory.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.precise.tesc.out                                |    2 
 external/glslang/Test/baseResults/spv.precise.tese.out                                |    2 
 external/glslang/Test/baseResults/spv.precision.frag.out                              |    2 
 external/glslang/Test/baseResults/spv.precisionNonESSamp.frag.out                     |   98 
 external/glslang/Test/baseResults/spv.prepost.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.pushConstant.vert.out                           |    2 
 external/glslang/Test/baseResults/spv.pushConstantAnon.vert.out                       |    2 
 external/glslang/Test/baseResults/spv.qualifiers.vert.out                             |    2 
 external/glslang/Test/baseResults/spv.queryL.frag.out                                 |    2 
 external/glslang/Test/baseResults/spv.register.autoassign-2.frag.out                  |    2 
 external/glslang/Test/baseResults/spv.register.autoassign.frag.out                    |    2 
 external/glslang/Test/baseResults/spv.register.noautoassign.frag.out                  |    2 
 external/glslang/Test/baseResults/spv.register.subpass.frag.out                       |   75 
 external/glslang/Test/baseResults/spv.rw.autoassign.frag.out                          |    2 
 external/glslang/Test/baseResults/spv.sampleMaskOverrideCoverage.frag.out             |    2 
 external/glslang/Test/baseResults/spv.separate.frag.out                               |    2 
 external/glslang/Test/baseResults/spv.set.vert.out                                    |    2 
 external/glslang/Test/baseResults/spv.shaderBallot.comp.out                           |    2 
 external/glslang/Test/baseResults/spv.shaderBallotAMD.comp.out                        |    2 
 external/glslang/Test/baseResults/spv.shaderDrawParams.vert.out                       |    2 
 external/glslang/Test/baseResults/spv.shaderFragMaskAMD.frag.out                      |  122 
 external/glslang/Test/baseResults/spv.shaderGroupVote.comp.out                        |    2 
 external/glslang/Test/baseResults/spv.shaderStencilExport.frag.out                    |    2 
 external/glslang/Test/baseResults/spv.shiftOps.frag.out                               |    2 
 external/glslang/Test/baseResults/spv.shortCircuit.frag.out                           |    2 
 external/glslang/Test/baseResults/spv.simpleFunctionCall.frag.out                     |    2 
 external/glslang/Test/baseResults/spv.simpleMat.vert.out                              |    2 
 external/glslang/Test/baseResults/spv.sparseTexture.frag.out                          |    2 
 external/glslang/Test/baseResults/spv.sparseTextureClamp.frag.out                     |    2 
 external/glslang/Test/baseResults/spv.specConst.vert.out                              |    2 
 external/glslang/Test/baseResults/spv.specConstant.comp.out                           |    2 
 external/glslang/Test/baseResults/spv.specConstant.vert.out                           |    2 
 external/glslang/Test/baseResults/spv.specConstantComposite.vert.out                  |    2 
 external/glslang/Test/baseResults/spv.specConstantOperations.vert.out                 |    2 
 external/glslang/Test/baseResults/spv.ssbo.autoassign.frag.out                        |    2 
 external/glslang/Test/baseResults/spv.ssboAlias.frag.out                              |    2 
 external/glslang/Test/baseResults/spv.stereoViewRendering.tesc.out                    |  101 
 external/glslang/Test/baseResults/spv.stereoViewRendering.vert.out                    |    2 
 external/glslang/Test/baseResults/spv.storageBuffer.vert.out                          |    2 
 external/glslang/Test/baseResults/spv.structAssignment.frag.out                       |    2 
 external/glslang/Test/baseResults/spv.structDeref.frag.out                            |    2 
 external/glslang/Test/baseResults/spv.structure.frag.out                              |    2 
 external/glslang/Test/baseResults/spv.subpass.frag.out                                |    3 
 external/glslang/Test/baseResults/spv.switch.frag.out                                 |    2 
 external/glslang/Test/baseResults/spv.swizzle.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.swizzleInversion.frag.out                       |    2 
 external/glslang/Test/baseResults/spv.test.frag.out                                   |    2 
 external/glslang/Test/baseResults/spv.test.vert.out                                   |    2 
 external/glslang/Test/baseResults/spv.texture.frag.out                                |    2 
 external/glslang/Test/baseResults/spv.texture.sampler.transform.frag.out              |    2 
 external/glslang/Test/baseResults/spv.texture.vert.out                                |    2 
 external/glslang/Test/baseResults/spv.textureBuffer.vert.out                          |    2 
 external/glslang/Test/baseResults/spv.textureGatherBiasLod.frag.out                   |    2 
 external/glslang/Test/baseResults/spv.types.frag.out                                  |    2 
 external/glslang/Test/baseResults/spv.uint.frag.out                                   |    2 
 external/glslang/Test/baseResults/spv.uniformArray.frag.out                           |    2 
 external/glslang/Test/baseResults/spv.variableArrayIndex.frag.out                     |    2 
 external/glslang/Test/baseResults/spv.varyingArray.frag.out                           |    2 
 external/glslang/Test/baseResults/spv.varyingArrayIndirect.frag.out                   |    2 
 external/glslang/Test/baseResults/spv.viewportArray2.tesc.out                         |   39 
 external/glslang/Test/baseResults/spv.viewportArray2.vert.out                         |    2 
 external/glslang/Test/baseResults/spv.voidFunction.frag.out                           |    2 
 external/glslang/Test/baseResults/spv.while-continue-break.vert.out                   |    2 
 external/glslang/Test/baseResults/spv.while-simple.vert.out                           |    2 
 external/glslang/Test/baseResults/spv.whileLoop.frag.out                              |    2 
 external/glslang/Test/baseResults/vulkan.ast.vert.out                                 |    2 
 external/glslang/Test/constFoldIntMin.frag                                            |   12 
 external/glslang/Test/cppDeepNest.frag                                                |  117 
 external/glslang/Test/cppIntMinOverNegativeOne.frag                                   |    6 
 external/glslang/Test/glsl.entryPointRename.vert                                      |   11 
 external/glslang/Test/glsl.entryPointRename2.vert                                     |    6 
 external/glslang/Test/hlsl.array.frag                                                 |   15 
 external/glslang/Test/hlsl.attributeC11.frag                                          |   18 
 external/glslang/Test/hlsl.attributeGlobalBuffer.frag                                 |    8 
 external/glslang/Test/hlsl.constantbuffer.frag                                        |    2 
 external/glslang/Test/hlsl.flattenOpaqueInit.vert                                     |    5 
 external/glslang/Test/hlsl.flattenSubset.frag                                         |   36 
 external/glslang/Test/hlsl.flattenSubset2.frag                                        |   24 
 external/glslang/Test/hlsl.hull.4.tesc                                                |   43 
 external/glslang/Test/hlsl.hull.5.tesc                                                |   43 
 external/glslang/Test/hlsl.intrinsics.frag                                            |    4 
 external/glslang/Test/hlsl.localStructuredBuffer.comp                                 |    4 
 external/glslang/Test/hlsl.opaque-type-bug.frag                                       |   16 
 external/glslang/Test/hlsl.partialFlattenLocal.vert                                   |   27 
 external/glslang/Test/hlsl.partialFlattenMixed.vert                                   |   16 
 external/glslang/Test/hlsl.samplecmp.dualmode.frag                                    |   14 
 external/glslang/Test/hlsl.samplecmp.negative.frag                                    |    3 
 external/glslang/Test/hlsl.shift.per-set.frag                                         |   59 
 external/glslang/Test/hlsl.subpass.frag                                               |  113 
 external/glslang/Test/invalidSwizzle.vert                                             |   10 
 external/glslang/Test/numeral.frag                                                    |    3 
 external/glslang/Test/overlongLiteral.frag                                            |    1 
 external/glslang/Test/remap.invalid-spirv-1.spv                                       |binary
 external/glslang/Test/remap.invalid-spirv-2.spv                                       |binary
 external/glslang/Test/runtests                                                        |   58 
 external/glslang/Test/spv.atomicInt64.comp                                            |   79 
 external/glslang/Test/spv.precisionNonESSamp.frag                                     |   24 
 external/glslang/Test/spv.register.subpass.frag                                       |   15 
 external/glslang/Test/spv.shaderFragMaskAMD.frag                                      |   29 
 external/glslang/Test/spv.stereoViewRendering.tesc                                    |    3 
 external/glslang/Test/spv.viewportArray2.tesc                                         |    8 
 external/glslang/glslang/Include/BaseTypes.h                                          |    2 
 external/glslang/glslang/Include/Common.h                                             |    5 
 external/glslang/glslang/Include/intermediate.h                                       |   33 
 external/glslang/glslang/MachineIndependent/Constant.cpp                              |   28 
 external/glslang/glslang/MachineIndependent/Initialize.cpp                            |  125 
 external/glslang/glslang/MachineIndependent/Intermediate.cpp                          |   16 
 external/glslang/glslang/MachineIndependent/ParseContextBase.cpp                      |   29 
 external/glslang/glslang/MachineIndependent/ParseHelper.cpp                           |   89 
 external/glslang/glslang/MachineIndependent/ParseHelper.h                             |   34 
 external/glslang/glslang/MachineIndependent/Scan.cpp                                  |    4 
 external/glslang/glslang/MachineIndependent/Scan.h                                    |   17 
 external/glslang/glslang/MachineIndependent/ShaderLang.cpp                            |   40 
 external/glslang/glslang/MachineIndependent/Versions.cpp                              |    6 
 external/glslang/glslang/MachineIndependent/Versions.h                                |    3 
 external/glslang/glslang/MachineIndependent/glslang.y                                 |    5 
 external/glslang/glslang/MachineIndependent/glslang_tab.cpp                           | 1718 -
 external/glslang/glslang/MachineIndependent/glslang_tab.cpp.h                         |    8 
 external/glslang/glslang/MachineIndependent/intermOut.cpp                             |   16 
 external/glslang/glslang/MachineIndependent/iomapper.cpp                              |  133 
 external/glslang/glslang/MachineIndependent/localintermediate.h                       |   87 
 external/glslang/glslang/MachineIndependent/preprocessor/Pp.cpp                       |   46 
 external/glslang/glslang/MachineIndependent/preprocessor/PpContext.h                  |    2 
 external/glslang/glslang/MachineIndependent/preprocessor/PpScanner.cpp                |    9 
 external/glslang/glslang/Public/ShaderLang.h                                          |   31 
 external/glslang/gtests/AST.FromFile.cpp                                              |    8 
 external/glslang/gtests/Hlsl.FromFile.cpp                                             |   43 
 external/glslang/gtests/Spv.FromFile.cpp                                              |    6 
 external/glslang/gtests/TestFixture.h                                                 |   15 
 external/glslang/hlsl/hlslAttributes.cpp                                              |   72 
 external/glslang/hlsl/hlslAttributes.h                                                |   17 
 external/glslang/hlsl/hlslGrammar.cpp                                                 |  145 
 external/glslang/hlsl/hlslGrammar.h                                                   |    3 
 external/glslang/hlsl/hlslParseHelper.cpp                                             |  683 
 external/glslang/hlsl/hlslParseHelper.h                                               |   54 
 external/glslang/hlsl/hlslParseables.cpp                                              |   64 
 external/glslang/hlsl/hlslScanContext.cpp                                             |    4 
 external/glslang/hlsl/hlslTokens.h                                                    |    2 
 external/glslang/known_good.json                                                      |   18 
 external/glslang/update_glslang_sources.py                                            |  151 
 external/spirv-tools/.appveyor.yml                                                    |    2 
 external/spirv-tools/.travis.yml                                                      |   39 
 external/spirv-tools/Android.mk                                                       |  218 
 external/spirv-tools/CHANGES                                                          |   23 
 external/spirv-tools/CMakeLists.txt                                                   |   16 
 external/spirv-tools/README.md                                                        |   43 
 external/spirv-tools/android_test/Android.mk                                          |   12 
 external/spirv-tools/android_test/jni/Application.mk                                  |    5 
 external/spirv-tools/android_test/test.cpp                                            |   22 
 external/spirv-tools/external/spirv-headers/include/spirv/1.0/spirv.core.grammar.json |  133 
 external/spirv-tools/external/spirv-headers/include/spirv/1.0/spirv.h                 |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.0/spirv.hpp               |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.0/spirv.hpp11             |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.0/spirv.json              |   18 
 external/spirv-tools/external/spirv-headers/include/spirv/1.0/spirv.lua               |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.0/spirv.py                |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.1/spirv.core.grammar.json |  133 
 external/spirv-tools/external/spirv-headers/include/spirv/1.1/spirv.h                 |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.1/spirv.hpp               |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.1/spirv.hpp11             |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.1/spirv.json              |   18 
 external/spirv-tools/external/spirv-headers/include/spirv/1.1/spirv.lua               |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.1/spirv.py                |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.2/spirv.core.grammar.json |  133 
 external/spirv-tools/external/spirv-headers/include/spirv/1.2/spirv.h                 |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.2/spirv.hpp               |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.2/spirv.hpp11             |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.2/spirv.json              |   18 
 external/spirv-tools/external/spirv-headers/include/spirv/1.2/spirv.lua               |   14 
 external/spirv-tools/external/spirv-headers/include/spirv/1.2/spirv.py                |   14 
 external/spirv-tools/include/spirv-tools/linker.hpp                                   |   98 
 external/spirv-tools/include/spirv-tools/optimizer.hpp                                |  101 
 external/spirv-tools/source/CMakeLists.txt                                            |   11 
 external/spirv-tools/source/comp/CMakeLists.txt                                       |   35 
 external/spirv-tools/source/comp/markv.h                                              |   64 
 external/spirv-tools/source/comp/markv_codec.cpp                                      | 2831 +
 external/spirv-tools/source/comp/markv_model.h                                        |  176 
 external/spirv-tools/source/diagnostic.cpp                                            |   14 
 external/spirv-tools/source/diagnostic.h                                              |   16 
 external/spirv-tools/source/ext_inst.cpp                                              |   42 
 external/spirv-tools/source/link/CMakeLists.txt                                       |   35 
 external/spirv-tools/source/link/linker.cpp                                           |  716 
 external/spirv-tools/source/opcode.cpp                                                |   46 
 external/spirv-tools/source/operand.cpp                                               |   99 
 external/spirv-tools/source/operand.h                                                 |    8 
 external/spirv-tools/source/opt/CMakeLists.txt                                        |   18 
 external/spirv-tools/source/opt/aggressive_dead_code_elim_pass.cpp                    |   45 
 external/spirv-tools/source/opt/aggressive_dead_code_elim_pass.h                      |   26 
 external/spirv-tools/source/opt/basic_block.cpp                                       |   18 
 external/spirv-tools/source/opt/basic_block.h                                         |   58 
 external/spirv-tools/source/opt/block_merge_pass.h                                    |    2 
 external/spirv-tools/source/opt/cfg_cleanup_pass.cpp                                  |  285 
 external/spirv-tools/source/opt/cfg_cleanup_pass.h                                    |   88 
 external/spirv-tools/source/opt/common_uniform_elim_pass.cpp                          |    2 
 external/spirv-tools/source/opt/common_uniform_elim_pass.h                            |    2 
 external/spirv-tools/source/opt/compact_ids_pass.cpp                                  |   12 
 external/spirv-tools/source/opt/dead_branch_elim_pass.cpp                             |  232 
 external/spirv-tools/source/opt/dead_branch_elim_pass.h                               |   21 
 external/spirv-tools/source/opt/dead_variable_elimination.cpp                         |  118 
 external/spirv-tools/source/opt/dead_variable_elimination.h                           |   51 
 external/spirv-tools/source/opt/decoration_manager.cpp                                |  263 
 external/spirv-tools/source/opt/decoration_manager.h                                  |   83 
 external/spirv-tools/source/opt/def_use_manager.cpp                                   |   22 
 external/spirv-tools/source/opt/def_use_manager.h                                     |    1 
 external/spirv-tools/source/opt/eliminate_dead_constant_pass.cpp                      |    8 
 external/spirv-tools/source/opt/eliminate_dead_functions_pass.cpp                     |   61 
 external/spirv-tools/source/opt/eliminate_dead_functions_pass.h                       |   39 
 external/spirv-tools/source/opt/flatten_decoration_pass.cpp                           |    4 
 external/spirv-tools/source/opt/fold.cpp                                              |  244 
 external/spirv-tools/source/opt/fold.h                                                |   37 
 external/spirv-tools/source/opt/function.cpp                                          |   29 
 external/spirv-tools/source/opt/function.h                                            |   18 
 external/spirv-tools/source/opt/inline_exhaustive_pass.cpp                            |    2 
 external/spirv-tools/source/opt/inline_exhaustive_pass.h                              |    2 
 external/spirv-tools/source/opt/inline_opaque_pass.cpp                                |    2 
 external/spirv-tools/source/opt/inline_opaque_pass.h                                  |    2 
 external/spirv-tools/source/opt/inline_pass.cpp                                       |   38 
 external/spirv-tools/source/opt/inline_pass.h                                         |    4 
 external/spirv-tools/source/opt/insert_extract_elim.cpp                               |   32 
 external/spirv-tools/source/opt/insert_extract_elim.h                                 |    5 
 external/spirv-tools/source/opt/instruction.cpp                                       |   25 
 external/spirv-tools/source/opt/instruction.h                                         |  111 
 external/spirv-tools/source/opt/instruction_list.cpp                                  |   44 
 external/spirv-tools/source/opt/instruction_list.h                                    |   92 
 external/spirv-tools/source/opt/ir_loader.cpp                                         |    8 
 external/spirv-tools/source/opt/local_access_chain_convert_pass.cpp                   |   10 
 external/spirv-tools/source/opt/local_access_chain_convert_pass.h                     |   13 
 external/spirv-tools/source/opt/local_single_block_elim_pass.cpp                      |    7 
 external/spirv-tools/source/opt/local_single_block_elim_pass.h                        |   13 
 external/spirv-tools/source/opt/local_single_store_elim_pass.cpp                      |    7 
 external/spirv-tools/source/opt/local_single_store_elim_pass.h                        |   13 
 external/spirv-tools/source/opt/local_ssa_elim_pass.cpp                               |   31 
 external/spirv-tools/source/opt/local_ssa_elim_pass.h                                 |   28 
 external/spirv-tools/source/opt/mem_pass.cpp                                          |    4 
 external/spirv-tools/source/opt/mem_pass.h                                            |   18 
 external/spirv-tools/source/opt/module.cpp                                            |    8 
 external/spirv-tools/source/opt/module.h                                              |  207 
 external/spirv-tools/source/opt/optimizer.cpp                                         |   62 
 external/spirv-tools/source/opt/pass.cpp                                              |   73 
 external/spirv-tools/source/opt/pass.h                                                |   23 
 external/spirv-tools/source/opt/pass_manager.cpp                                      |    1 
 external/spirv-tools/source/opt/pass_manager.h                                        |    2 
 external/spirv-tools/source/opt/passes.h                                              |    4 
 external/spirv-tools/source/opt/reflect.h                                             |   13 
 external/spirv-tools/source/opt/remove_duplicates_pass.cpp                            |  274 
 external/spirv-tools/source/opt/remove_duplicates_pass.h                              |   55 
 external/spirv-tools/source/opt/strength_reduction_pass.cpp                           |  210 
 external/spirv-tools/source/opt/strength_reduction_pass.h                             |   75 
 external/spirv-tools/source/opt/strip_debug_info_pass.cpp                             |    3 
 external/spirv-tools/source/util/hex_float.h                                          |   37 
 external/spirv-tools/source/util/huffman_codec.h                                      |    5 
 external/spirv-tools/source/util/ilist.h                                              |  317 
 external/spirv-tools/source/util/ilist_node.h                                         |  261 
 external/spirv-tools/source/util/move_to_front.h                                      |   45 
 external/spirv-tools/source/val/function.h                                            |    5 
 external/spirv-tools/source/val/validation_state.cpp                                  |  258 
 external/spirv-tools/source/val/validation_state.h                                    |   63 
 external/spirv-tools/source/validate.cpp                                              |    4 
 external/spirv-tools/source/validate.h                                                |   16 
 external/spirv-tools/source/validate_arithmetics.cpp                                  |  467 
 external/spirv-tools/source/validate_bitwise.cpp                                      |  248 
 external/spirv-tools/source/validate_cfg.cpp                                          |   11 
 external/spirv-tools/source/validate_conversion.cpp                                   |  419 
 external/spirv-tools/source/validate_id.cpp                                           |  633 
 external/spirv-tools/source/validate_layout.cpp                                       |    3 
 external/spirv-tools/source/validate_logicals.cpp                                     |  288 
 external/spirv-tools/source/validate_type_unique.cpp                                  |    6 
 external/spirv-tools/test/CMakeLists.txt                                              |    2 
 external/spirv-tools/test/comp/CMakeLists.txt                                         |   14 
 external/spirv-tools/test/comp/markv_codec_test.cpp                                   |  485 
 external/spirv-tools/test/diagnostic_test.cpp                                         |   26 
 external/spirv-tools/test/link/CMakeLists.txt                                         |   43 
 external/spirv-tools/test/link/binary_version_test.cpp                                |   54 
 external/spirv-tools/test/link/entry_points_test.cpp                                  |   66 
 external/spirv-tools/test/link/global_values_amount_test.cpp                          |  153 
 external/spirv-tools/test/link/ids_limit_test.cpp                                     |   81 
 external/spirv-tools/test/link/linker_fixture.h                                       |  124 
 external/spirv-tools/test/link/matching_imports_to_exports_test.cpp                   |  326 
 external/spirv-tools/test/link/memory_model_test.cpp                                  |   71 
 external/spirv-tools/test/opt/CMakeLists.txt                                          |   30 
 external/spirv-tools/test/opt/aggressive_dead_code_elim_test.cpp                      |  337 
 external/spirv-tools/test/opt/cfg_cleanup_test.cpp                                    |  448 
 external/spirv-tools/test/opt/compact_ids_test.cpp                                    |  105 
 external/spirv-tools/test/opt/dead_branch_elim_test.cpp                               |  302 
 external/spirv-tools/test/opt/dead_variable_elim_test.cpp                             |  299 
 external/spirv-tools/test/opt/eliminate_dead_functions_test.cpp                       |  206 
 external/spirv-tools/test/opt/inline_test.cpp                                         |  196 
 external/spirv-tools/test/opt/instruction_list_test.cpp                               |  112 
 external/spirv-tools/test/opt/ir_loader_test.cpp                                      |   13 
 external/spirv-tools/test/opt/local_single_block_elim.cpp                             |    8 
 external/spirv-tools/test/opt/local_ssa_elim_test.cpp                                 |   31 
 external/spirv-tools/test/opt/pass_manager_test.cpp                                   |   14 
 external/spirv-tools/test/opt/pass_test.cpp                                           |  241 
 external/spirv-tools/test/opt/pass_utils.h                                            |   10 
 external/spirv-tools/test/opt/strength_reduction_test.cpp                             |  427 
 external/spirv-tools/test/opt/strip_debug_info_test.cpp                               |    6 
 external/spirv-tools/test/util/CMakeLists.txt                                         |   18 
 external/spirv-tools/test/util/ilist_test.cpp                                         |  318 
 external/spirv-tools/test/val/CMakeLists.txt                                          |   25 
 external/spirv-tools/test/val/val_arithmetics_test.cpp                                | 1215 
 external/spirv-tools/test/val/val_bitwise_test.cpp                                    |  512 
 external/spirv-tools/test/val/val_cfg_test.cpp                                        |   76 
 external/spirv-tools/test/val/val_conversion_test.cpp                                 | 1065 
 external/spirv-tools/test/val/val_extensions_test.cpp                                 |   21 
 external/spirv-tools/test/val/val_id_test.cpp                                         |   50 
 external/spirv-tools/test/val/val_layout_test.cpp                                     |  112 
 external/spirv-tools/test/val/val_logicals_test.cpp                                   |  870 
 external/spirv-tools/test/val/val_ssa_test.cpp                                        |    8 
 external/spirv-tools/test/val/val_type_unique_test.cpp                                |    5 
 external/spirv-tools/tools/CMakeLists.txt                                             |   21 
 external/spirv-tools/tools/as/as.cpp                                                  |   14 
 external/spirv-tools/tools/comp/markv.cpp                                             |   71 
 external/spirv-tools/tools/comp/markv_model_factory.cpp                               |   34 
 external/spirv-tools/tools/comp/markv_model_factory.h                                 |   32 
 external/spirv-tools/tools/comp/markv_model_shader_default.cpp                        |  112 
 external/spirv-tools/tools/comp/markv_model_shader_default.h                          |   30 
 external/spirv-tools/tools/comp/markv_model_shader_default_autogen.inc                |14519 ++++++++++
 external/spirv-tools/tools/link/linker.cpp                                            |  150 
 external/spirv-tools/tools/opt/opt.cpp                                                |  302 
 external/spirv-tools/tools/stats/stats_analyzer.cpp                                   |  153 
 external/spirv-tools/utils/check_copyright.py                                         |    3 
 external/spirv-tools/utils/generate_grammar_tables.py                                 |   93 
 external_revisions/glslang_revision                                                   |    2 
 external_revisions/spirv-headers_revision                                             |    2 
 external_revisions/spirv-tools_revision                                               |    2 
 icd/CMakeLists.txt                                                                    |  173 
 icd/README.md                                                                         |   95 
 icd/VkICD_mock_icd.def                                                                |   36 
 icd/VkICD_mock_icd.json                                                               |   12 
 include/vulkan/vulkan.h                                                               |   83 
 include/vulkan/vulkan.hpp                                                             |  535 
 layers/CMakeLists.txt                                                                 |    2 
 layers/buffer_validation.cpp                                                          |  181 
 layers/core_validation.cpp                                                            |  839 
 layers/core_validation.h                                                              |   10 
 layers/core_validation_types.h                                                        |   25 
 layers/descriptor_sets.cpp                                                            |   64 
 layers/descriptor_sets.h                                                              |    8 
 layers/linux/VkLayer_core_validation.json                                             |    2 
 layers/linux/VkLayer_object_tracker.json                                              |    2 
 layers/linux/VkLayer_parameter_validation.json                                        |    2 
 layers/linux/VkLayer_standard_validation.json                                         |    2 
 layers/linux/VkLayer_threading.json                                                   |    2 
 layers/linux/VkLayer_unique_objects.json                                              |    2 
 layers/object_tracker_utils.cpp                                                       |  103 
 layers/parameter_validation_utils.cpp                                                 |   32 
 layers/vk_validation_error_database.txt                                               | 1254 
 layers/vk_validation_error_messages.h                                                 | 1300 
 layers/windows/VkLayer_core_validation.json                                           |    2 
 layers/windows/VkLayer_object_tracker.json                                            |    2 
 layers/windows/VkLayer_parameter_validation.json                                      |    2 
 layers/windows/VkLayer_standard_validation.json                                       |    2 
 layers/windows/VkLayer_threading.json                                                 |    2 
 layers/windows/VkLayer_unique_objects.json                                            |    2 
 libs/glm/detail/dummy.cpp                                                             |  380 
 loader/CMakeLists.txt                                                                 |    7 
 loader/LoaderAndLayerInterface.md                                                     |   12 
 loader/loader.c                                                                       |   11 
 loader/unknown_ext_chain_gas.asm                                                      |    2 
 loader/vulkan.pc.in                                                                   |    3 
 scripts/check_toolchain_revisions.sh                                                  |   67 
 scripts/helper_file_generator.py                                                      |   91 
 scripts/lvl_genvk.py                                                                  |   45 
 scripts/mock_icd_generator.py                                                         | 1084 
 scripts/spec.py                                                                       |    6 
 scripts/vk.xml                                                                        |  381 
 scripts/vk_validation_stats.py                                                        |    2 
 scripts/vuid_mapping.py                                                               |    9 
 tests/layer_validation_tests.cpp                                                      | 1090 
 tests/layers/linux/VkLayer_device_profile_api.json                                    |    2 
 tests/layers/linux/VkLayer_test.json                                                  |    2 
 tests/layers/linux/VkLayer_wrap_objects.json                                          |    2 
 tests/layers/windows/VkLayer_device_profile_api.json                                  |    2 
 tests/layers/windows/VkLayer_test.json                                                |    2 
 tests/layers/windows/VkLayer_wrap_objects.json                                        |    2 
 tests/run_wrap_objects_tests.sh                                                       |   12 
 tests/vkvalidatelayerdoc.sh                                                           |    2 
 update_external_sources.bat                                                           |    2 
 update_external_sources.sh                                                            |    2 
 829 files changed, 59572 insertions(+), 16900 deletions(-)

New commits:
commit b18904e9766f993574eb5d834f84ad02ed7b0e47
Author: Timo Aaltonen <tjaalton@debian.org>
Date:   Thu Dec 21 11:55:19 2017 +0200

    bump changelog

diff --git a/debian/changelog b/debian/changelog
index a150545..82e6d85 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+vulkan (1.0.65.1+dfsg1-1) UNRELEASED; urgency=medium
+
+  * New upstream release.
+
+ -- Timo Aaltonen <tjaalton@debian.org>  Thu, 21 Dec 2017 11:34:07 +0200
+
 vulkan (1.0.61.1+dfsg1-1) unstable; urgency=medium
 
   * New upstream release.

commit 3280289e6fcff89b1db9d2a98ebbc6c5b1d9949f
Author: Timo Aaltonen <tjaalton@debian.org>
Date:   Thu Dec 21 11:34:04 2017 +0200

    Refresh external/

diff --git a/external/glslang/.appveyor.yml b/external/glslang/.appveyor.yml
index 64e7ae6..d5c7225 100644
--- a/external/glslang/.appveyor.yml
+++ b/external/glslang/.appveyor.yml
@@ -25,6 +25,7 @@ matrix:
 # scripts that run after cloning repository
 install:
   - git clone https://github.com/google/googletest.git External/googletest
+  - C:/Python27/python.exe update_glslang_sources.py
 
 build:
   parallel: true  # enable MSBuild parallel builds
diff --git a/external/glslang/.gitignore b/external/glslang/.gitignore
index 3e6cc14..a1fe394 100644
--- a/external/glslang/.gitignore
+++ b/external/glslang/.gitignore
@@ -7,3 +7,4 @@ TAGS
 build/
 Test/localResults/
 External/googletest
+External/spirv-tools
diff --git a/external/glslang/.travis.yml b/external/glslang/.travis.yml
index 40e3fc7..0237d25 100644
--- a/external/glslang/.travis.yml
+++ b/external/glslang/.travis.yml
@@ -39,11 +39,8 @@ addons:
   apt:
     packages:
       - clang-3.6
-      - ninja-build
 
 install:
-  # Install ninja on Mac OS X.
-  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update && brew install ninja; fi
   # Make sure that clang-3.6 is selected on Linux.
   - if [[ "$TRAVIS_OS_NAME" == "linux" && "$CC" == "clang" ]]; then
       export CC=clang-3.6 CXX=clang++-3.6;
@@ -57,7 +54,8 @@ install:
     fi
 
 before_script:
-  - git clone https://github.com/google/googletest.git External/googletest
+  - git clone --depth=1 https://github.com/google/googletest.git External/googletest
+  - ./update_glslang_sources.py
 
 script:
   - mkdir build && cd build
@@ -68,14 +66,12 @@ script:
             -DANDROID_NATIVE_API_LEVEL=android-12
             -DCMAKE_BUILD_TYPE=Release
             -DANDROID_ABI="armeabi-v7a with NEON"
-            -DBUILD_TESTING=OFF
-            -GNinja ..;
-      ninja;
+            -DBUILD_TESTING=OFF ..;
+      make -j4;
     else
       cmake -DCMAKE_BUILD_TYPE=${GLSLANG_BUILD_TYPE}
-            -DCMAKE_INSTALL_PREFIX=`pwd`/install
-            -GNinja ..;
-      ninja install;
+            -DCMAKE_INSTALL_PREFIX=`pwd`/install ..;
+      make -j4 install;
       ctest --output-on-failure &&
       cd ../Test && ./runtests;
     fi
diff --git a/external/glslang/CMakeLists.txt b/external/glslang/CMakeLists.txt
index 9bc94b0..0d453cc 100644
--- a/external/glslang/CMakeLists.txt
+++ b/external/glslang/CMakeLists.txt
@@ -1,6 +1,9 @@
 # increase to 3.1 once all major distributions
 # include a version of CMake >= 3.1
 cmake_minimum_required(VERSION 2.8.12)
+if (POLICY CMP0048)
+  cmake_policy(SET CMP0048 NEW)
+endif()
 set_property(GLOBAL PROPERTY USE_FOLDERS ON)
 
 # Adhere to GNU filesystem layout conventions
@@ -18,6 +21,8 @@ option(ENABLE_NV_EXTENSIONS "Enables support of Nvidia-specific extensions" ON)
 
 option(ENABLE_HLSL "Enables HLSL input support" ON)
 
+option(ENABLE_OPT "Enables spirv-opt capability if present" ON)
+
 if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND WIN32)
     set(CMAKE_INSTALL_PREFIX "install" CACHE STRING "..." FORCE)
 endif()
@@ -52,7 +57,7 @@ endif(WIN32)
 
 if(${CMAKE_CXX_COMPILER_ID} MATCHES "GNU")
     add_compile_options(-Wall -Wmaybe-uninitialized -Wuninitialized -Wunused -Wunused-local-typedefs
-                        -Wunused-parameter -Wunused-value  -Wunused-variable -Wunused-but-set-parameter -Wunused-but-set-variable)
+                        -Wunused-parameter -Wunused-value  -Wunused-variable -Wunused-but-set-parameter -Wunused-but-set-variable -fno-exceptions)
     add_compile_options(-Wno-reorder)  # disable this from -Wall, since it happens all over.
 elseif(${CMAKE_CXX_COMPILER_ID} MATCHES "Clang")
     add_compile_options(-Wall -Wuninitialized -Wunused -Wunused-local-typedefs
@@ -83,6 +88,17 @@ endfunction(glslang_set_link_args)
 # We depend on these for later projects, so they should come first.
 add_subdirectory(External)
 
+if(NOT TARGET SPIRV-Tools-opt)
+    set(ENABLE_OPT OFF)
+endif()
+
+if(ENABLE_OPT)
+    message(STATUS "optimizer enabled")
+    add_definitions(-DENABLE_OPT)
+elseif(ENABLE_HLSL)
+    message(STATUS "spirv-tools not linked - illegal SPIRV may be generated for HLSL")
+endif()
+
 add_subdirectory(glslang)
 add_subdirectory(OGLCompilersDLL)
 if(ENABLE_GLSLANG_BINARIES)
diff --git a/external/glslang/External/CMakeLists.txt b/external/glslang/External/CMakeLists.txt
index 4f694ee..4d96901 100644
--- a/external/glslang/External/CMakeLists.txt
+++ b/external/glslang/External/CMakeLists.txt
@@ -33,3 +33,11 @@ if(BUILD_TESTING)
             "Google Mock was not found - tests based on that will not build")
     endif()
 endif()
+
+if(ENABLE_OPT AND NOT TARGET SPIRV-Tools-opt)
+    if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools)
+        set(SPIRV_SKIP_TESTS ON CACHE BOOL "Skip building SPIRV-Tools tests")
+        add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools spirv-tools)
+    endif()
+endif()
+
diff --git a/external/glslang/README.md b/external/glslang/README.md
index 193e38d..9d5efb5 100644
--- a/external/glslang/README.md
+++ b/external/glslang/README.md
@@ -52,6 +52,7 @@ Building
 ### Dependencies
 
 * [CMake][cmake]: for generating compilation targets.
+* [Python 2.7][python]: for executing SPIRV-Tools scripts. (Optional if not using SPIRV-Tools.)


Reply to: