- Mar 25, 2018
-
-
John Kessenich authored
This effects 60 tests, in a trivial way, but is critical to factor out this noise from future planned changes.
-
- Mar 21, 2018
-
-
Neil Roberts authored
-
- Mar 19, 2018
-
-
John Kessenich authored
Fixes #1295. Tokens that are accepted by any version of HLSL or GLSL should be allowed when #ifdef'd off, such that errors are not reported.
-
- Mar 17, 2018
-
-
John Kessenich authored
Enabled via -fhlsl_functionality1
-
- Mar 16, 2018
-
-
Ben Clayton authored
-
John Kessenich authored
The base and shift amount need to be integers, but not of the same type. This fixes #1296 and replaces #1297.
-
John Kessenich authored
Reinforces that conversion rules are operation-specific. Side effect is that HLSL logical-operator conversions are more direct (e.g. float -> bool, rather than float -> int -> bool).
-
- Mar 13, 2018
-
-
Ben Clayton authored
-
- Mar 07, 2018
-
-
John Kessenich authored
Now, version 5.* is all connected to making the uint type, which doesn't quite work. Generator versions 4 and 6 do not do this.
-
Neil Henning authored
-
- Mar 06, 2018
-
-
John Kessenich authored
-
John Kessenich authored
This reverts commit 2c65069e, reversing changes made to fa9b465b.
-
John Kessenich authored
-
GregF authored
-
- Mar 03, 2018
-
-
John Kessenich authored
-
Rex Xu authored
-
- Mar 02, 2018
-
-
Rex Xu authored
- Support new opaque types: f16sampler*, f16image*, f16subpassInput*. - Add new built-in GLSL texture/image functions.
-
- Feb 27, 2018
-
-
John Kessenich authored
-
John Kessenich authored
Constants were generally cached by type opcode, but all structures share the same type opcode (OpTypeStruct), so they need to be cached by type id.
-
- Feb 22, 2018
-
-
John Kessenich authored
-
John Kessenich authored
-
- Feb 21, 2018
-
-
John Kessenich authored
This is semantically required by HLSL, and frequently results in using OpSelect instead of control flow.
-
- Feb 18, 2018
-
-
LoopDawg authored
HLSL allows image and texture types to be templatized on sub-vec4 types, or even structures. This was mostly handled already during creation of sampling operations. However, for operator[] which can generate image loads, this wasn't happening. It also isn't very easy to do at that point in time, because operator[] does not know where the results it produces will end up. They may be an lvalue or an rvalue, and there's a post-process to convert loads to stores. They may end up in atomic ops. To bypass that difficulty, GlslangToSpv now looks for this case and adds the appropriate conversion. LIMITATION: this only works for cases for which a simple conversion opcode suffices. That is to say, it will not work if the type is templatized on a struct.
-
- Feb 15, 2018
-
-
John Kessenich authored
-
- Feb 12, 2018
-
-
John Kessenich authored
-
- Feb 09, 2018
-
-
David Neto authored
One legalization case updated for a renumbered ID
-
- Feb 06, 2018
-
-
John Kessenich authored
-
John Kessenich authored
- Fixes #1233 - Treats local bools like anything else - more consistently deals with a dynamic component selection
-
- Feb 05, 2018
-
-
David Neto authored
Update SPIRV-Tools. Relevant functional changes: - Optimizer enhancements: - ADCE now removes OpSwitch - Block merging occurs in more cases - Optimizer fixes: - Constant propagation (CCP): support matrix constants - #1199: Optimizer: Fix CCP: don't propagate spec constants. - #1203: Optimizer: Fix common uniform elim bug introduced by refactoring. - #1210: Optimizer: Aggressive dead code elimination: Fix 'break' identification. - #1212: Optimizer: Aggressive dead code elimination: Was skipping too many instructions. - #1214: Optimizer: Aggressive dead code elimination: Fix infinite loop. - #1228: Optimizer: Fix CCP: Handling of varying Phi nodes; was resulting in infinite loop. - #1245: Optimizer: Dead branch elimination: Avoid a null pointer dereference. - #1250: Optimizer: Dead branch elimination: Avoid spuriously reporting a change. - #1262: Support building on VisualStudio 2013 again Update SPIRV-Headers, with "unified1" directory. Updated one Glslang legalization test base result due to better block merging.
-
- Feb 02, 2018
-
-
John Kessenich authored
-
- Feb 01, 2018
-
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
See https://github.com/KhronosGroup/GLSL/pull/11.
-
John Kessenich authored
- make it sharable with GLSL - correct the case insensitivity - remove the map; queries are not needed, all entries need processing - make it easier to build bottom up (will help GLSL parsing) - support semantic checking and reporting - allow front-end dependent semantics and attribute name mapping
-
John Kessenich authored
Fixes #1236.
-
- Jan 29, 2018
-
-
John Kessenich authored
-
- Jan 12, 2018
-
-
David Neto authored
Optimizations used in HLSL legalization now sweep away unused types.
-
- Jan 11, 2018
-
-
John Kessenich authored
-
- Jan 10, 2018
-
-
John Kessenich authored
- correct inheritence (or not) of the right XFB buffer - compute implicit stride (fixes #1212) - semantic check block-member redeclarations - inherit stride from a member
-
- Jan 08, 2018
-
-
John Kessenich authored
- fixes #1209, addresses most of #1187 - only query feature availability on seeing the feature (was doing it for every single token) - correct case-sensitive checks for multi-character suffixes
-