~pcsx2-team/pcsx2-github-mirror/+git/glslang:location-validation

Last commit made on 2020-07-01
Get this branch:
git clone -b location-validation https://git.launchpad.net/~pcsx2-team/pcsx2-github-mirror/+git/glslang

Branch merges

Branch information

Name:
location-validation
Repository:
lp:~pcsx2-team/pcsx2-github-mirror/+git/glslang

Recent commits

863ea23... by John Kessenich <email address hidden>

SPIRV-Tools and tests: Update to location-validation in SPIRV-Tools.

This introduces five new "Validation failures":
- baseResults/hlsl.semantic.vert: issue with gl_ClipDistance/CullDistance
- baseResults/spv.430.vert: issue gl_ClipDistance
- baseResults/spv.450.tesc: still unknown
- baseResults/spv.dataOut.frag: gl_FragData should not be supported, problem with front end
- baseResults/spv.meshShaderPerViewUserDefined.mesh: seems okay, maybe a problem with SPIRV-Tools

f6facfa... by John Kessenich <email address hidden>

Tests: More broadly use automapping binding/location.

This adds or changes binding/location decorations in 100s of shaders.
It also allows more output (spv.register.autoassign.rangetest.frag)
due to allowing ioMap() to fail.

b112fac... by John Kessenich <email address hidden>

HLSL: Catch error cases earlier, preventing a later assert.

Related to https://github.com/KhronosGroup/SPIRV-Cross/issues/1414.
The real problem is either using DX10 semantics for DX9 or missing
functionality in DX10 parsing.

8d3f3b7... by John Kessenich <email address hidden>

Merge pull request #2302 from KhronosGroup/fix-texture-precision

SPV: RelaxedPrecision: use the result precision for texture sampling.

d5b5215... by John Kessenich <email address hidden>

Merge pull request #2300 from KhronosGroup/generalize-precision

SPV: RelaxedPrecision: Generalize fix #2293 to cover more operations.

c858d7b... by John Kessenich <email address hidden>

Merge pull request #2301 from ben-clayton/split-libs

CMake: break up glslang into smaller static libs

b8c3386... by Ben Clayton <email address hidden>

CMake: break up glslang into smaller static libs

Add `GenericCodeGen` and `MachineIndependent` static library targets.
Privately import both of these into the `glslang` target.
Privately import `MachineIndependent` into the `SPIRV` target.

This is done to break the dependency of `libglslang.so` non-public APIs from `libspirv.so`,
which will become problematic once `glslang` hides its non-public symbols.

| File | Before | After |
|---------------------------|-----------:|-----------:|
| `libGenericCodeGen.a` | - | `527716` |
| `libglslang.a` | `68175944` | `512938` |
| `libHLSL.a` | `1428` | `1428` |
| `libMachineIndependent.a` | - | `67132202` |
| `libOGLCompiler.a` | `75908` | `75908` |
| `libOSDependent.a` | `23768` | `23768` |
| `libSPIRV.a` | `15710210` | `15710210` |
| `libSPVRemapper.a` | `3250894` | `3250894` |

| File | Before | After |
|-----------------------------------------|-----------:|-----------:|
| `libglslang-default-resource-limits.so` | `117032` | `117032` |
| `libglslang.so` | `22380688` | `22368216` |
| `libHLSL.so` | `7520` | `7520` |
| `libOGLCompiler.a` | `75908` | `75908` |
| `libOSDependent.a` | `23768` | `23768` |
| `libSPIRV.so` | `7288336` | `28151016` |
| `libSPVRemapper.so` | `1940208` | `1940208` |

Issues: #2283, #1484

8f4251a... by John Kessenich <email address hidden>

Merge pull request #2297 from ben-clayton/fpic

CMake: Compile with -fPIC when building SOs

12c155f... by John Kessenich <email address hidden>

SPV: RelaxedPrecision: use the result precision for texture sampling.

Fix #2298.

The AST has two precisions, an operation precision and a result precision.
Actual use of GLSL with mediump samplers wants the result precision, so
pick that up instead of the operation precision.

90f1d6a... by John Kessenich <email address hidden>

Merge pull request #2296 from ben-clayton/err-unresolved

CMake: Error on unresolved symbols