- 29 Sep, 2017 1 commit
-
-
John Kessenich authored
HLSL: force textures to shadow modes from combined samplers
-
- 28 Sep, 2017 4 commits
-
-
LoopDawg authored
Texture shadow mode must match the state of the sampler they are combined with. This change does that, both for the AST and the symbol table. Note that the texture cannot easily be *created* the right way, because this may not be known at that time. Instead, the texture is subsequently patched. This cannot work if a single texture is used with both a shadow and non-shadow sampler, so that case is detected and generates an error. This is permitted by the HLSL language, however. See #1073 discussion. Fixed one test source that was using a texture with both shadow and non-shadow samplers.
-
John Kessenich authored
Legalization: Fix warnings and disable tests when spirv-tools not present
-
GregF authored
-
John Kessenich authored
Enable HLSL legalization
-
- 27 Sep, 2017 8 commits
-
-
GregF authored
-
GregF authored
-
GregF authored
-
GregF authored
-
GregF authored
-
GregF authored
Also added known-good mechanism to fetch latest validated spirv-tools. Also added -Od and -Os to disable optimizer and optimize for size. Fetching spirv-tools is optional for both glsl and hlsl. Legalization of hlsl is done by default if spirv-opt is present at cmake time. Optimization for glsl is currently done through the option -Os. Legalization testing is currently only done on four existing shaders. A separate baseLegalResults directory holds those results. All previous testing is done with the optimizer disabled.
-
John Kessenich authored
Implement extension GL_NV_shader_atomic_int64
-
Rex Xu authored
-
- 26 Sep, 2017 1 commit
-
-
John Kessenich authored
Travis: use make instead of ninja
-
- 25 Sep, 2017 1 commit
-
-
Lei Zhang authored
-
- 23 Sep, 2017 1 commit
-
-
John Kessenich authored
Remapper: make remapper robust against non-exiting error handlers
-
- 22 Sep, 2017 1 commit
-
-
John Kessenich authored
CMake file changes for SPIR-V legalization for HLSL
-
- 21 Sep, 2017 1 commit
-
-
GregF authored
Cmake now looks for External/spirv-tools. If found, it links in SPIRV-Tools-opt and SPVRemapper, and adds -DENABLE_OPT to build.
-
- 20 Sep, 2017 1 commit
-
-
LoopDawg authored
Remapper errors are generally fatal: there has been some unexpected situation while parsing the SPV binary, and there is no reasonable way to carry on. The errorHandler() function is called in this case, which by default exits, but it is possible to submit a handler which does not. In that case the remapper would carry on in a bad state. This change ensures a graceful termination of the remap() function. While a try {} catch {} construct would be the ideal and safe way to do this, that's off limits for certain environments, so this tries to do the same thing with explicit code, to catch all the bailout paths.
-
- 19 Sep, 2017 1 commit
-
-
John Kessenich authored
-
- 16 Sep, 2017 1 commit
-
-
John Kessenich authored
Add support for GL_OES_EGL_image_external_essl3
-
- 15 Sep, 2017 4 commits
-
-
xavier authored
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
HLSL: allow split type in InputPatch template type, & HS return types.
-
- 14 Sep, 2017 2 commits
-
-
LoopDawg authored
InputPatch parameters to patch constant functions were not using the internal (temporary) variable type. That could cause validation errors if the input patch had a mixture of builtins and user qualified members. This uses the entry point's internal form. There is currently a limitation: if an InputPatch is used in a PCF, it must also have appeared in the main entry point's parameter list. That is not a limitation of HLSL. Currently that situation is detected and an "implemented" error results. The limitation can be addressed, but isn't yet in the current form of the PR.
-
LoopDawg authored
Hull shaders have an implicitly arrayed output. This is handled by creating an arrayed form of the provided output type, and writing to the element of it indexed by InvocationID. The implicit indirection into that array was causing some troubles when copying to a split structure. handleAssign was able to handle simple symbol lvalues, but not an lvalue composed of an indirection into an array.
-
- 13 Sep, 2017 1 commit
-
-
John Kessenich authored
There was some ambiguity/contradiction in this behavior, and Khronos decided glslang should always have these outside blocks, rather than have stage/vendor/target variations.
-
- 12 Sep, 2017 10 commits
-
-
John Kessenich authored
GLSL: Promote HLSL entry-point renaming code to be used by GLSL as well.
-
John Kessenich authored
Fixes #1045.
-
John Kessenich authored
Implement the extension GL_AMD_shader_fragment_mask
-
John Kessenich authored
Build: Fix strdup -> _strdup warnings.
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
Delete unused 'this' capture
-
John Kessenich authored
-
- 11 Sep, 2017 1 commit
-
-
mchock-nv authored
Remove an unused 'this' entry from a lambda capture list. This cleans up a unused-lambda-capture warning.
-
- 09 Sep, 2017 1 commit
-
-
amhagan authored
-