- 20 Jan, 2016 3 commits
-
-
Dejan Mircevski authored
-
John Kessenich authored
SPV: Don't remove SPIR-V blocks before codegen, use new InReadableOrder instead.
-
Dejan Mircevski authored
A removed block releases its instructions, so Module::idToInstruction suddenly contains dangling references. The original motivation for block removal was to skip some unreachable blocks, but that's already achieved by InReadableOrder.cpp. Also updated stale comments.
-
- 19 Jan, 2016 17 commits
-
-
John Kessenich authored
SPV: Rework loop code generation to match SPIR-V 1.0.
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
John Kessenich authored
SPV: Code-generate SPIR-V blocks in a more readable order
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
Add a test for unreachable merge block. Update test results with the new order: mainly delaying merge blocks and removing unreachable ones.
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
Dejan Mircevski authored
-
- 18 Jan, 2016 6 commits
-
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
Freed up some command line memory (not used programmatically).
-
John Kessenich authored
Free memory associated with SPIR-V generation and the pragmaTable.
-
Andrew Woloszyn authored
-
Andrew Woloszyn authored
-
- 17 Jan, 2016 1 commit
-
-
John Kessenich authored
-
- 16 Jan, 2016 1 commit
-
-
John Kessenich authored
Separating file I/O from compile/link lets the compile/link be done repeatedly in a loop for testing and measuring of performance and memory footprint, including seeing memory growth over time for functional-level memory-leak testing. While the older compile-only mode already had this functionality, and typically showed no memory leaks, SPIR-V uses the link path, has pending "TODO" for memory freeing, and this shows several kilobytes of leaking per compile-link. Most likely, pending merge request 131 will address much of this.
-
- 15 Jan, 2016 1 commit
-
-
John Kessenich authored
Parser & SPV: Implement two extensions regarding GLSL sparse texture.
-
- 14 Jan, 2016 6 commits
-
-
John Kessenich authored
Preprocessor: Removed strcpy that copied a value to itself.
-
John Kessenich authored
Fix several build warnings/error encountered with VS2013
-
John Kessenich authored
-
John Kessenich authored
linkValidate: Round up structure sizes to vec4 in std140
-
Jason Ekstrand authored
The argument version is passed in from above and struct handling ensures that row-majorness gets propagated correctly from one level to the next. If we just look at the type itself and it's embedded in a struct that's declared row-major, we may get the wrong stride.
-
Jason Ekstrand authored
-
- 12 Jan, 2016 1 commit
-
-
Andrew Woloszyn authored
Found by running glslang with -fsanitize=address in clang. Also fixes a potential buffer-overrun with return from lReadByte.
-
- 11 Jan, 2016 4 commits
-
-
Dejan Mircevski authored
Change-Id: Ie8236430bb9e30a9be2e0c1573c42183c2f4d0d4
-
Dejan Mircevski authored
To ensure back branches always go to a header block, create a header block even for !testFirst loops. Then unify common code between the testFirst/!testFirst cases. Generate the header-block code first, so update golden files. Realize that certain infinite loops generate invalid SPIR-V, so put a TODO to instead abort code generation in such cases. Change-Id: I1e173c8f73daad186cfc666b7d72bd563ed7665d
-
Dejan Mircevski authored
Also update breakForLoop and call builder.closeLoop() in code generation. Remove dead code. Change-Id: Ic8ce5b208530f8787989ef45a2efa405f1b45310
-
Dejan Mircevski authored
Also remove dead code. Change-Id: I2c0177d8cab48b7d6f9442715aecb7951597f3c8
-