John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fa668dad99 
							
						 
					 
					
						
						
							
							SPV: Reduce spurious type generation by removing intermediate types in the middle of access chains.  
						
						... 
						
						
						
						This generally simplifies access chain generation, with far fewer  type conversions.
It is particularly important to future SPIR-V changes where there is less aggregate
type uniqueness due to carrying different layout information with the type. 
						
						
					 
					
						2015-09-13 14:46:30 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c9a808319a 
							
						 
					 
					
						
						
							
							SPV arrays: Add support for runtime-sized array types and arrays of arrays.  
						
						... 
						
						
						
						This includes run-time block.member.length() (OpArrayLength). 
						
						
					 
					
						2015-09-13 10:18:19 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							a06bd527ca 
							
						 
					 
					
						
						
							
							SPV: Correct generation of transparent offsets for implicitly assigned offsets.  
						
						
						
						
					 
					
						2015-09-11 15:15:23 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							31ed4830d1 
							
						 
					 
					
						
						
							
							SPV: Only decorate array and matrix strides for transparent types requiring explicit layouts.  
						
						
						
						
					 
					
						2015-09-09 17:51:38 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							0487d550d1 
							
						 
					 
					
						
						
							
							Merge pull request  #69  from jekstrand/texel-fetch  
						
						... 
						
						
						
						SPIR-V: Add support for texelFetch 
						
						
					 
					
						2015-09-09 16:33:45 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							fc6189197d 
							
						 
					 
					
						
						
							
							SPIRV: Add the support of missing image functions  #72  
						
						
						
						
					 
					
						2015-09-09 16:42:49 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							d4782c10d4 
							
						 
					 
					
						
						
							
							SPIRV: Token layout of OpAtomicXXX instructions is incorrect  #70  
						
						
						
						
					 
					
						2015-09-06 16:30:11 +08:00 
						 
				 
			
				
					
						
							
							
								Jason Ekstrand 
							
						 
					 
					
						
						
						
						
							
						
						
							18b9fbd742 
							
						 
					 
					
						
						
							
							SPIRV: Add support for texelFetch  
						
						... 
						
						
						
						There's nothing really special about texelFetch other than the opcode and
some restrictions so adding it is pretty trivial. 
						
						
					 
					
						2015-09-05 14:17:24 -07:00 
						 
				 
			
				
					
						
							
							
								Jason Ekstrand 
							
						 
					 
					
						
						
						
						
							
						
						
							54aedf1f66 
							
						 
					 
					
						
						
							
							SPIRV: Decorate matrices and arrays with their strides  
						
						
						
						
					 
					
						2015-09-05 09:50:58 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							78258d3d40 
							
						 
					 
					
						
						
							
							Fix misspelled EOpFrexp and EOpLdexp.  
						
						
						
						
					 
					
						2015-08-19 17:30:12 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fc51d284aa 
							
						 
					 
					
						
						
							
							Backward incompatible: Turn on PureOperatorBuiltins: use only enum-based built-in functions in the AST.  
						
						... 
						
						
						
						If this breaks your AST consumer, best is to modify it to test
against the enum values instead of doing string comparisons on
built-in function names.  This is the reason the change was made.
If you need the old behavior, you should be able to get it back by changing
PureOperatorBuiltins to be false instead of true.  This path will work for
a while, but is marked deprecated.
Also, the old behavior is tagged as release 2.4. 
						
						
					 
					
						2015-08-19 13:43:25 -06:00 
						 
				 
			
				
					
						
							
							
								Andrew Woloszyn 
							
						 
					 
					
						
						
						
						
							
						
						
							8b64fa5474 
							
						 
					 
					
						
						
							
							Fixes for compiling glslang on Android.  
						
						... 
						
						
						
						Primarily fix is due to Android not supporting std::to_string(). 
						
						
					 
					
						2015-08-17 11:39:38 -04:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f99b7dde08 
							
						 
					 
					
						
						
							
							Merge pull request  #54  from mknejp/master  
						
						... 
						
						
						
						SPIR-V: Return undefined values from implicit returns instead of dummy 
						
						
					 
					
						2015-08-11 14:25:20 -06:00 
						 
				 
			
				
					
						
							
							
								Steve 
							
						 
					 
					
						
						
						
						
							
						
						
							3573f2e029 
							
						 
					 
					
						
						
							
							Add missing OpTypeSampledImage to prevent unknown type error from SPVRemapper.  
						
						
						
						
					 
					
						2015-08-11 09:20:14 -06:00 
						 
				 
			
				
					
						
							
							
								Miro Knejp 
							
						 
					 
					
						
						
						
						
							
						
						
							28f9b1c28d 
							
						 
					 
					
						
						
							
							SPIR-V: Return undefined values from implicit returns instead of dummy  
						
						... 
						
						
						
						Previously if a non-void function implictly returned, a dummy variable
was created as return value. Now instead it returns the result of the
OpUndef instruction. This better conveys the presence of undefined
behavior to SPIR-V consuming tools (and humans).
It also saves one ID per occurrence... 
						
						
					 
					
						2015-08-11 03:26:46 +02:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							65c78a0b62 
							
						 
					 
					
						
						
							
							Array of array: Implement the core functionality: types, constructors, operations.  
						
						... 
						
						
						
						There will be subsequent commits to refine semantics, esp. version-specific semantics,
as well as I/O functionality and restrictions.
Note: I'm getting white-space differences in the preprocessor test results,
which I'm not checking in.  I think they need to be tagged as binary or something. 
						
						
					 
					
						2015-08-10 17:08:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							6726cccc91 
							
						 
					 
					
						
						
							
							Add new SPIR-V 31 files.  
						
						
						
						
					 
					
						2015-08-06 22:59:24 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5e4b1242bf 
							
						 
					 
					
						
						
							
							Move to revision 31 of SPIR-V.  
						
						
						
						
					 
					
						2015-08-06 22:55:01 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							306695360d 
							
						 
					 
					
						
						
							
							Fixes to 8f1684b7bb881813365efd013b05bc0900a52a0c, merge pull request 52.  
						
						
						
						
					 
					
						2015-08-06 22:02:24 -06:00 
						 
				 
			
				
					
						
							
							
								baldurk 
							
						 
					 
					
						
						
						
						
							
						
						
							d7c5ead6a1 
							
						 
					 
					
						
						
							
							Compile fixes for gcc -Wall  
						
						
						
						
					 
					
						2015-08-05 21:04:23 +02:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							61d7d7ad73 
							
						 
					 
					
						
						
							
							Revisioning: Include GLSL.std.450 version.  Also, the revision.h script now includes redirection to revision.h.  
						
						
						
						
					 
					
						2015-08-03 12:04:56 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							426394d0c8 
							
						 
					 
					
						
						
							
							AST -> SPV: Add basic atomic_uint and atomic*() built-in function functionality.  
						
						
						
						
					 
					
						2015-07-23 10:22:48 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c040e76c58 
							
						 
					 
					
						
						
							
							Portability: Remove unneeded "= default" to work with older compilers.  
						
						
						
						
					 
					
						2015-07-22 15:25:59 -06:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							3e6a33cedf 
							
						 
					 
					
						
						
							
							spv::Builder::Loop constructor inits all members.  
						
						... 
						
						
						
						After construction, the Loop is effectively const.
This perturbs the IDs in SPIR-V tests because the body block
is created before generating any of the loop code, rather than
only when the body is first referenced. 
						
						
					 
					
						2015-07-22 12:24:21 -04:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							96f4911351 
							
						 
					 
					
						
						
							
							SPV: Make previous commit compile with MSVC 2012.  
						
						
						
						
					 
					
						2015-07-20 22:34:49 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							37e8337958 
							
						 
					 
					
						
						
							
							Merge pull request  #22  from google/structured-do-while  
						
						... 
						
						
						
						Generate correctly structured do-while loops. 
						
						
					 
					
						2015-07-20 22:14:38 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2f273369e4 
							
						 
					 
					
						
						
							
							Performance: Simple upgrade/cleanup of stl c++11 containers (10% perf. increase).  
						
						
						
						
					 
					
						2015-07-19 12:03:51 -06:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							c22f37cfb4 
							
						 
					 
					
						
						
							
							Generate correctly structured do-while loops.  
						
						... 
						
						
						
						The loop test is always emitted before the loop body.
For do-while loops, use a phi node to track whether we're
on the first loop iteration, and only check the loop test
on the second and subsequent iterations.
For do-while loops, the loop test branch no longer occurs
at the top of the loop, so it must get its own selection
merge instruction.
A block can't be the target of more than one merge instruction.
So when the loop test executes after the body (as in do-while in GLSL)
we need to introduce a dummy block to be the target of the selection
merge just before the loop test conditional branch.
The other arm of the branch exits the loop and hence is the
"break block" exception in the structured control flow rules. 
						
						
					 
					
						2015-07-17 17:51:51 -04:00 
						 
				 
			
				
					
						
							
							
								Steve 
							
						 
					 
					
						
						
						
						
							
						
						
							465a14666a 
							
						 
					 
					
						
						
							
							Comment out some dead assignments per suggestion from static analysis tools.  
						
						... 
						
						
						
						Code is left in as comments for clarity to humans. 
						
						
					 
					
						2015-07-15 14:34:35 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							9e55f633bc 
							
						 
					 
					
						
						
							
							Include specification revision as part of the version string.  
						
						
						
						
					 
					
						2015-07-15 10:03:39 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							eebb20511f 
							
						 
					 
					
						
						
							
							Merge pull request  #11  from baldurk/size-t-int-warning-fixes  
						
						... 
						
						
						
						Fix warnings compiling on x64 with size_t to int casts 
						
						
					 
					
						2015-07-14 12:25:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f98ee23415 
							
						 
					 
					
						
						
							
							Fix incorrect used of snprintf()  
						
						
						
						
					 
					
						2015-07-12 19:39:51 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							68d78fd31e 
							
						 
					 
					
						
						
							
							Updated command-line options, adding -o for saving binaries, -G for OpenGL SPIR-V validation, -v etc.  
						
						... 
						
						
						
						Old uses should still work as they did before.
Also encapsulated use of these flags during parsing, for the parse context.
Added SPIR-V version to -v. 
						
						
					 
					
						2015-07-12 19:28:10 -06:00 
						 
				 
			
				
					
						
							
							
								baldurk 
							
						 
					 
					
						
						
						
						
							
						
						
							d76692dfb8 
							
						 
					 
					
						
						
							
							on x64, size_t is 64-bit and int is 32-bit, so needs an explicit cast  
						
						
						
						
					 
					
						2015-07-12 11:32:58 +02:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							1f654e1603 
							
						 
					 
					
						
						
							
							Merge pull request  #4  from baldurk/relative-include-paths  
						
						... 
						
						
						
						include by relative path, so root doesn't need to be in the search path 
						
						
					 
					
						2015-07-11 16:41:38 -06:00 
						 
				 
			
				
					
						
							
							
								Andre Weissflog 
							
						 
					 
					
						
						
						
						
							
						
						
							a5ade51363 
							
						 
					 
					
						
						
							
							Fix most clang warnings  
						
						... 
						
						
						
						- member initializing order in some constructors
- missing default branches in switch-case
- uninitialized variable if switch-case default (uncritical because
  program would exit)
- && and || brace warnings in if() 
						
						
					 
					
						2015-07-11 14:45:57 +02:00 
						 
				 
			
				
					
						
							
							
								baldurk 
							
						 
					 
					
						
						
						
						
							
						
						
							42169c5fee 
							
						 
					 
					
						
						
							
							include by relative path, so root doesn't need to be in the search path  
						
						
						
						
					 
					
						2015-07-08 15:27:29 +02:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e0603a441e 
							
						 
					 
					
						
						
							
							Front-end: move to rational internal array-of-array interfaces and design.  (A-of-A is not yet implemented though.)  
						
						
						
						
					 
					
						2015-07-06 21:00:03 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ec43d0abec 
							
						 
					 
					
						
						
							
							glslang -> SPIR-V: smear scalars for integer (scalar * vector).  OpVectorTimesScalar is only for floats.  
						
						
						
						
					 
					
						2015-07-04 17:17:31 -06:00 
						 
				 
			
				
					
						
							
							
								Felix Kaaman 
							
						 
					 
					
						
						
						
						
							
						
						
							61deffd92a 
							
						 
					 
					
						
						
							
							Fix include directive depending on root folder name  
						
						
						
						
					 
					
						2015-07-02 15:25:23 +02:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							140f3df134 
							
						 
					 
					
						
						
							
							Final round for line endings.  
						
						
						
						
					 
					
						2015-06-26 16:58:36 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e5e0f6e37a 
							
						 
					 
					
						
						
							
							glslang -> SPV: swap arguments as needed for OpVectorTimesScalar and OpMatrixTimesScalar, and check for correct types for those as well as OpMatrixTimesVector, OpVectorTimesMatrix, and OpMatrixTimesMatrix.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31486  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-06-13 00:48:48 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							8d64d44c3f 
							
						 
					 
					
						
						
							
							glslang -> SPV: fix degenerate switch topologies (bug 14118).  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31485  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-06-12 22:34:37 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fae38ee277 
							
						 
					 
					
						
						
							
							glslang portability: Fixed a slew of OSX compilation warnings (but not all).  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31469  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-06-10 23:23:12 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							79eaa91e6f 
							
						 
					 
					
						
						
							
							glslang portability: Resolve OSX errors, some other OS warnings.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31468  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-06-10 22:05:48 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							3ef22f2139 
							
						 
					 
					
						
						
							
							SPV compressor: Fixes a possible asserts.  Attribution: spvremapper@lunarg.com  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31451  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-06-09 02:01:53 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							06e1d0b434 
							
						 
					 
					
						
						
							
							glslang -> SPV: Improvements in swizzles on access chains: Bug 14007 (wrong type), simplications, tests, support mixed swizzle with dynamic component selection.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31277  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-22 21:57:58 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							6b3fd19d89 
							
						 
					 
					
						
						
							
							glslang -> SPV: add decorations for built-ins that are inside blocks.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31266  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-22 01:53:15 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ea543986f9 
							
						 
					 
					
						
						
							
							glslang -> SPV: translate the source profile to the SPV source language.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31265  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-22 01:21:31 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e61ed59726 
							
						 
					 
					
						
						
							
							glsl -> SPV: fix OpVectorInsertDynamic result type bug.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31262  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-22 00:58:41 +00:00