- 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 23, 2018
-
-
John Kessenich authored
-
- Feb 22, 2018
-
-
John Kessenich authored
GLSL/SPV: Fix #1196: Require resources to have layout(binding=X).
-
John Kessenich authored
-
John Kessenich authored
-
- Feb 21, 2018
-
-
John Kessenich authored
HLSL: Fix #1249: Always execute both sides of ternary "?:".
-
John Kessenich authored
This is semantically required by HLSL, and frequently results in using OpSelect instead of control flow.
-
- Feb 20, 2018
-
-
John Kessenich authored
HLSL: Add conversions for image ops during SPV construction
-
- 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
-
John Kessenich authored
Fix an issue of interpolateAtVertexAMD().
-
- Feb 14, 2018
-
-
Rex Xu authored
An error message should be reported if the interpolant is not an input.
-
- Feb 12, 2018
-
-
John Kessenich authored
-
- Feb 10, 2018
-
-
John Kessenich authored
Update SPIRV-Tools known-good
-
John Kessenich authored
Upgrade update_glslang_sources.py to work with other sites
-
- Feb 09, 2018
-
-
David Neto authored
One legalization case updated for a renumbered ID
-
- Feb 08, 2018
-
-
GregF authored
--site gitlab must be added to command for gitlab capability. Default is github.
-
John Kessenich authored
-
John Kessenich authored
Add DeadInsertElim to legalization and RedundancyElim to -Os.
-
- Feb 07, 2018
-
-
GregF authored
-
- Feb 06, 2018
-
-
John Kessenich authored
SPV: Create more access chains addressing a few swizzling issues.
-
John Kessenich authored
Preprocessor: Use std::string instead of std::stringstream
-
John Kessenich authored
-
John Kessenich authored
- Fixes #1233 - Treats local bools like anything else - more consistently deals with a dynamic component selection
-
Arseny Kapoulkine authored
std::stringstream has a measurable overhead for preprocessing - it appears that operator<< does a tiny bit of extra work for appending chars/strings and also can't be inlined in most cases on VS2015; additionally, std::endl triggers a stream flush which also adds up. Replacing this with std::string buffer gets the preprocessing time down from 180ms to 135ms in one case, making it 1.33x faster. Note that integer-to-string conversion is using std::to_string; in theory this could be slower than sprintf or manual conversion, but I haven't found these cases to affect preprocessing time in practice (std::to_string would always use the short string buffer for line/version numbers, and the number of calls is not too significant).
-
- Feb 05, 2018
-
-
John Kessenich authored
Update SPIRV-Tools known-good
-
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
-
John Kessenich authored
Control flow attributes
-
- 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
-
John Kessenich authored
Fixes #1236.
-
John Kessenich authored
-
John Kessenich authored
-
- Jan 29, 2018
-
-
John Kessenich authored
-
- Jan 18, 2018
-
-
John Kessenich authored
-