- 09 Nov, 2017 1 commit
-
-
LoopDawg authored
This script will crank a supplied set of glslang test shaders through the spirv-val tool, reporting on the results. There are some important things to note: * Like 'runtests', this must be invoked from the 'Test' subdirectory. * This is mostly useful on the hlsl.* tests, although it is not strictly limited to those. The reason is that most of the glsl tests either contain validation error cases, and so fail to compile, or are not using a #version compatible with producing SPIR-V modules. * Some tests, such as negative tests, or most of the glsl tests, have intentional compilation errors. This script treats that as OK. Failures are successfully compiling shaders which proceed to fail spirv-val. * spirv-val is looked for in either the External directory, or if not found there, in a sibling directory of glslang, and if not found there either, in /usr/local/bin. * There are a bunch of command line options. ./validate-shaders.sh --help will describe them. Some examples to try: ./validate-shaders.sh hlsl.* # exercise all hlsl.* tests. ./validate-shaders.sh --terse hlsl.* # same, but tersely. # dump validator results for problems in something.frag: ./validate-shaders.sh --quiet --dump-val something.frag
-
- 03 Nov, 2017 4 commits
-
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
Remapper: Fix strip algo when strip ranges overlap
-
- 02 Nov, 2017 4 commits
-
-
GregF authored
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
To handle sparse assignments, don't check maxCombinedTextureImageUnits.
-
- 28 Oct, 2017 3 commits
-
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
Add python3 compatibility to update_glslang_sources.py
-
- 27 Oct, 2017 4 commits
-
-
GregF authored
-
John Kessenich authored
Both debug and release clang builds have segfaulted on recent changes, non deterministically, while doing the single/multi-thread test all test files. Removing recent test files, to see if it gives a clue.
-
John Kessenich authored
-
John Kessenich authored
GLSL: Fold constant SHRT_MIN/INT_MIN/LLONG_MIN % -1 to 0.
-
- 25 Oct, 2017 1 commit
-
-
Aaron Muir Hamilton authored
-
- 24 Oct, 2017 4 commits
-
-
John Kessenich authored
GLSL: Check for implicit inner dimension in array of atomic_uint.
-
John Kessenich authored
Preprocessor: Evaluate INT_MIN % -1 to 0.
-
Aaron Muir Hamilton authored
-
John Kessenich authored
Update spirv-tools known-good
-
- 23 Oct, 2017 7 commits
-
-
GregF authored
-
Aaron Muir Hamilton authored
-
John Kessenich authored
Only try swizzles on vectors, numbers, and booleans.
-
John Kessenich authored
Merge branch 'only-parse-inf-constant-in-hlsl' of https://github.com/xorgy/glslang into xorgy-only-parse-inf-constant-in-hlsl
-
John Kessenich authored
-
John Kessenich authored
Check for hexadecimal literals exceeding MaxTokenLength.
-
Aaron Muir Hamilton authored
-
- 22 Oct, 2017 1 commit
-
-
Aaron Muir Hamilton authored
-
- 21 Oct, 2017 1 commit
-
-
Aaron Muir Hamilton authored
-
- 20 Oct, 2017 5 commits
-
-
John Kessenich authored
Nonfunctional: minor: use std::array for per-set shifts, fix warning.
-
LoopDawg authored
Two unrelated, minor tweaks: (1) Use std::array for shiftBindingForSet. Now matches shiftBinding. (2) Add parens in shouldFlatten() to make compiler warning happy.
-
John Kessenich authored
Add per-descriptor-set IO mapping shift values.
-
John Kessenich authored
-
John Kessenich authored
-
- 19 Oct, 2017 5 commits
-
-
John Kessenich authored
-
LoopDawg authored
This PR adds the ability to provide per-descriptor-set IO mapping shift values. If a particular binding does not land into a per-set value, then it falls back to the prior behavior (global shifts per resource class). Because there were already 6 copies of many different methods and internal variables and functions, and this PR would have added 6 more, a new API is introduced to cut down on replication and present a cleaner interface. For the global (non-set-specific) API, the old entry points still exist for backward compatibility, but are phrased internally in terms of the following. // Resource type for IO resolver enum TResourceType { EResSampler, EResTexture, EResImage, EResUbo, EResSsbo, EResUav, EResCount }; Methods on TShader: void setShiftBinding(TResourceType res, unsigned int base); void setShiftBindingForSet(TResourceType res, unsigned int set, unsigned int base); The first method replaces the 6 prior entry points of various spellings, which exist now in depreciated form. The second provides per-resource-set functionality. Both accept an enum from the list above. From the command line, the existing options can accept either a single shift value as before, or a series of 1 or more [set offset] pairs. Both can be provided, as in: ... --stb 20 --stb 2 25 3 30 ... which will use the offset 20 for anything except descriptor set 2 (which uses 25) and 3 (which uses 30). -
John Kessenich authored
-
John Kessenich authored
Desktop defaults to highp for samplers, but this should not apply to the built-in functions, so make it appy only to user declarations.
-
John Kessenich authored
Preprocessor: Evaluate INT_MIN / -1 to 0.
-