Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							57bbde4a99 
							
						 
					 
					
						
						
							
							Add copyright, remove unused #includes.  
						
						
						
						
					 
					
						2016-01-19 11:44:53 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							fa242904b0 
							
						 
					 
					
						
						
							
							Make Instruction::getBlock() const.  
						
						
						
						
					 
					
						2016-01-19 11:31:55 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							377f0cab26 
							
						 
					 
					
						
						
							
							Fix merge issues.  
						
						
						
						
					 
					
						2016-01-19 10:17:33 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							38d039d063 
							
						 
					 
					
						
						
							
							Rework inReadableOrder() as a recursive descent.  
						
						... 
						
						
						
						Add a test for unreachable merge block.
Update test results with the new order: mainly delaying merge blocks and
removing unreachable ones. 
						
						
					 
					
						2016-01-19 10:14:50 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							9c591487ad 
							
						 
					 
					
						
						
							
							Fix spv.branch-return.vert.  
						
						
						
						
					 
					
						2016-01-19 10:11:34 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							baa55a1591 
							
						 
					 
					
						
						
							
							Add spv.branch-return.vert and fix inReadableOrder().  
						
						
						
						
					 
					
						2016-01-19 10:11:34 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							44bfb0d0cd 
							
						 
					 
					
						
						
							
							Implement inReadableOrder().  
						
						
						
						
					 
					
						2016-01-19 10:11:34 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							454796e008 
							
						 
					 
					
						
						
							
							Call addPredecessor() on OpSwitch blocks.  
						
						
						
						
					 
					
						2016-01-19 10:10:15 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							5fe789b4af 
							
						 
					 
					
						
						
							
							Add Block::successors.  
						
						
						
						
					 
					
						2016-01-19 10:10:15 -05:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							60a7f3f7ae 
							
						 
					 
					
						
						
							
							Merge branch 'master' of github.com:KhronosGroup/glslang  
						
						
						
						
					 
					
						2016-01-18 11:11:46 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							28ad350b35 
							
						 
					 
					
						
						
							
							Memory: remove a part of the last merge request that causes crashes in multi-threaded mode.  
						
						
						
						
					 
					
						2016-01-18 11:10:40 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5996961bd1 
							
						 
					 
					
						
						
							
							Merge pull request  #134  from AWoloszyn/glslangvalidator-memory  
						
						... 
						
						
						
						Freed up some command line memory (not used programmatically). 
						
						
					 
					
						2016-01-18 11:10:18 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							3e9add360d 
							
						 
					 
					
						
						
							
							Merge pull request  #133  from AWoloszyn/spirv-memory  
						
						... 
						
						
						
						Free memory associated with SPIR-V generation and the pragmaTable. 
						
						
					 
					
						2016-01-18 10:48:07 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Woloszyn 
							
						 
					 
					
						
						
						
						
							
						
						
							b7946d16bb 
							
						 
					 
					
						
						
							
							Free memory associated with SPIR-V generation.  
						
						
						
						
					 
					
						2016-01-18 10:29:41 -05:00 
						 
				 
			
				
					
						
							
							
								Andrew Woloszyn 
							
						 
					 
					
						
						
						
						
							
						
						
							b891c2b827 
							
						 
					 
					
						
						
							
							Freed up some memory when no longer needed in glslangValidator.  
						
						
						
						
					 
					
						2016-01-18 09:26:25 -05:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							712ecb96a2 
							
						 
					 
					
						
						
							
							Doubles: Add all the missing built-in double-based prototypes.  
						
						
						
						
					 
					
						2016-01-16 20:37:43 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c57b2a97fa 
							
						 
					 
					
						
						
							
							Memory/Perf: For link-mode, isolate file I/O so API can be looped over.  
						
						... 
						
						
						
						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. 
						
						
					 
					
						2016-01-16 15:30:03 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							68f1431a55 
							
						 
					 
					
						
						
							
							Merge pull request  #121  from amdrexu/feature  
						
						... 
						
						
						
						Parser & SPV: Implement two extensions regarding GLSL sparse texture. 
						
						
					 
					
						2016-01-15 00:52:18 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							863aa667f3 
							
						 
					 
					
						
						
							
							Merge pull request  #129  from AWoloszyn/fix-noop-strcpy  
						
						... 
						
						
						
						Preprocessor: Removed strcpy that copied a value to itself. 
						
						
					 
					
						2016-01-13 19:12:50 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5caf936428 
							
						 
					 
					
						
						
							
							Merge pull request  #126  from mgadams/win32_warnings  
						
						... 
						
						
						
						Fix several build warnings/error encountered with VS2013 
						
						
					 
					
						2016-01-13 19:11:05 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e95fa5e095 
							
						 
					 
					
						
						
							
							Tests:  Update to match previous pull request.  
						
						
						
						
					 
					
						2016-01-13 19:04:19 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2619e47502 
							
						 
					 
					
						
						
							
							Merge pull request  #130  from jekstrand/fix-std140-struct  
						
						... 
						
						
						
						linkValidate: Round up structure sizes to vec4 in std140 
						
						
					 
					
						2016-01-13 18:59:31 -07:00 
						 
				 
			
				
					
						
							
							
								Jason Ekstrand 
							
						 
					 
					
						
						
						
						
							
						
						
							a76766a434 
							
						 
					 
					
						
						
							
							getBaseAlignment: Use the rowMajor argument for determining matrix strides  
						
						... 
						
						
						
						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. 
						
						
					 
					
						2016-01-13 17:17:39 -08:00 
						 
				 
			
				
					
						
							
							
								Jason Ekstrand 
							
						 
					 
					
						
						
						
						
							
						
						
							79b7046a27 
							
						 
					 
					
						
						
							
							getBaseAlignment: Round up structure sizes to max alignment  
						
						
						
						
					 
					
						2016-01-13 17:17:39 -08:00 
						 
				 
			
				
					
						
							
							
								Andrew Woloszyn 
							
						 
					 
					
						
						
						
						
							
						
						
							e602d25f09 
							
						 
					 
					
						
						
							
							Removed strcpy that copied to itself.  
						
						... 
						
						
						
						Found by running glslang with -fsanitize=address in clang.
Also fixes a potential buffer-overrun with return from lReadByte. 
						
						
					 
					
						2016-01-12 15:48:00 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							dba2826328 
							
						 
					 
					
						
						
							
							Merge branch 'master' of github.com:google/glslang into loopgen  
						
						... 
						
						
						
						Change-Id: Ie8236430bb9e30a9be2e0c1573c42183c2f4d0d4 
						
						
					 
					
						2016-01-11 16:26:18 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							832c65c33b 
							
						 
					 
					
						
						
							
							Fix back-branch target for do-while loops.  
						
						... 
						
						
						
						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 
						
						
					 
					
						2016-01-11 15:57:11 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							c8fbbab419 
							
						 
					 
					
						
						
							
							Update .out files with new loop SPIR-V.  
						
						... 
						
						
						
						Also update breakForLoop and call builder.closeLoop() in code
generation.
Remove dead code.
Change-Id: Ic8ce5b208530f8787989ef45a2efa405f1b45310 
						
						
					 
					
						2016-01-11 14:48:36 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							7819bee82c 
							
						 
					 
					
						
						
							
							Switch loops stack to use LoopBlocks.  
						
						... 
						
						
						
						Also remove dead code.
Change-Id: I2c0177d8cab48b7d6f9442715aecb7951597f3c8 
						
						
					 
					
						2016-01-11 09:35:22 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							13228243b2 
							
						 
					 
					
						
						
							
							Test a for loop with no body.  
						
						... 
						
						
						
						Change-Id: I5b53cc008349afad94b14500506fcab4d6e64d2e 
						
						
					 
					
						2016-01-10 23:15:08 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							e537b8b488 
							
						 
					 
					
						
						
							
							Fix unreachable-block removal.  
						
						... 
						
						
						
						Add a test for loop without a condition.
Change-Id: Idd7fc462218a84b1e745207e2975a3f2897d30a0 
						
						
					 
					
						2016-01-10 19:37:00 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							9c6734c8df 
							
						 
					 
					
						
						
							
							First cut at new loop codegen.  
						
						... 
						
						
						
						Change-Id: Id3bdf8b7a5606e7ce5d856ef225d5ddbe59a584b 
						
						
					 
					
						2016-01-10 12:15:13 -05:00 
						 
				 
			
				
					
						
							
							
								Mark Adams 
							
						 
					 
					
						
						
						
						
							
						
						
							364c21c8c0 
							
						 
					 
					
						
						
							
							Fix several build warnings/error encountered with VS2013  
						
						... 
						
						
						
						This also fixes the newlines for spirv.hpp to be consistent with the rest of the files. 
						
						
					 
					
						2016-01-06 13:41:02 -05:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							48edadfd24 
							
						 
					 
					
						
						
							
							Parser & SPV: Implement two extensions regarding GLSL sparse texture.  
						
						... 
						
						
						
						Implement extension "GL_ARB_sparse_texture2".
Implement extension "GL_ARB_sparse_texture_clamp". 
						
						
					 
					
						2016-01-05 16:07:02 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e23c9849c2 
							
						 
					 
					
						
						
							
							SPV: Handle type punning in createCompositeCompare().  
						
						
						
						
					 
					
						2016-01-04 23:59:09 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f8842e55c0 
							
						 
					 
					
						
						
							
							SPV: Don't do stride decorations for arrays of arrays of blocks.  
						
						
						
						
					 
					
						2016-01-04 19:22:56 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c9e0a42b92 
							
						 
					 
					
						
						
							
							SPV: Handle stride decorations for arrays of arrays, and using multiple type instances when strides are used.  
						
						
						
						
					 
					
						2015-12-29 21:27:24 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4998789d4e 
							
						 
					 
					
						
						
							
							SPV: Fix array strides by explicitly computing them in the getBaseAlignment() algorithm.  
						
						
						
						
					 
					
						2015-12-29 19:20:55 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e0b6cad44f 
							
						 
					 
					
						
						
							
							SPV: Generalize multiple struct-type instances for interpolation/invariant qualifiers.  
						
						
						
						
					 
					
						2015-12-24 10:30:13 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							69d01eadd6 
							
						 
					 
					
						
						
							
							Semantics: Catch nested types containing 'int' with non-'flat' interpolation.  
						
						
						
						
					 
					
						2015-12-22 16:39:07 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							50e57560a1 
							
						 
					 
					
						
						
							
							SPV: Don't make MissingFunctionality() exit anymore.  
						
						
						
						
					 
					
						2015-12-21 21:21:11 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2211835b4d 
							
						 
					 
					
						
						
							
							SPV: Implement composite comparisons (reductions across hierchical compare).  
						
						
						
						
					 
					
						2015-12-21 20:54:09 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							59420fd356 
							
						 
					 
					
						
						
							
							SPV: Move to deterministic results for OpEntryPoint, for test stability across platforms.  
						
						
						
						
					 
					
						2015-12-21 11:45:34 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7ba6341a05 
							
						 
					 
					
						
						
							
							SPV: Make OpEntryPoint I/O list include all static uses.  
						
						... 
						
						
						
						Before, it was only including explicit interface, sufficient for IO-Block-declared
oriented interface, but not sufficient for all modes GLSL might be used with
SPIR-V.
Two things are accomplished now:
1) each id will appear exactly once
2) the OpEntryPoint list will union static use with declarations 
						
						
					 
					
						2015-12-20 17:37:07 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							3ac051e41d 
							
						 
					 
					
						
						
							
							SPV: recursively propagate row/col majorness through nested structures.  
						
						... 
						
						
						
						This includes doing structure uniqueness modulo majorness, for shared nested structures. 
						
						
					 
					
						2015-12-20 12:25:21 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f85e806e44 
							
						 
					 
					
						
						
							
							SPV: Nested layouts: Recursively send around the top-level std140 or std430 packing.  
						
						... 
						
						
						
						This also distinguishes between the same struct included in multiple parent packings. 
						
						
					 
					
						2015-12-19 15:21:38 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b62e693f74 
							
						 
					 
					
						
						
							
							Merge pull request  #118  from amdrexu/bugfix  
						
						... 
						
						
						
						SPV: Fix an issue related with imageStore() for 2DMS. 
						
						
					 
					
						2015-12-19 11:20:25 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							a3211bfe72 
							
						 
					 
					
						
						
							
							Merge pull request  #120  from amdrexu/bugfix2  
						
						... 
						
						
						
						Parser: Correct the storage qualifier of gl_HelperInvocation. 
						
						
					 
					
						2015-12-19 11:14:32 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							aa1dd61257 
							
						 
					 
					
						
						
							
							Merge branch 'master' of github.com:KhronosGroup/glslang  
						
						
						
						
					 
					
						2015-12-19 11:10:56 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b6d7fa91a1 
							
						 
					 
					
						
						
							
							Merge pull request  #117  from amdrexu/feature  
						
						... 
						
						
						
						SPV: Implement GLSL built-in bitcast functions. 
						
						
					 
					
						2015-12-19 11:08:02 -07:00