John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e0b6cad44f 
							
						 
					 
					
						
						
							
							SPV: Generalize multiple struct-type instances for interpolation/invariant qualifiers.  
						
						
						
						
					 
					
						2015-12-24 10:30:13 -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 
							
						 
					 
					
						
						
						
						
							
						
						
							b6d7fa91a1 
							
						 
					 
					
						
						
							
							Merge pull request  #117  from amdrexu/feature  
						
						... 
						
						
						
						SPV: Implement GLSL built-in bitcast functions. 
						
						
					 
					
						2015-12-19 11:08:02 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							61c47a951b 
							
						 
					 
					
						
						
							
							Constant folding: Correct result type of non-square matrix folding.  
						
						... 
						
						
						
						This also made the function easier to read by identifying
left and right operands more clearly. 
						
						
					 
					
						2015-12-16 15:50:25 -07:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							7beb44190f 
							
						 
					 
					
						
						
							
							SPV: Fix an issue related with imageStore() for 2DMS.  
						
						
						
						
					 
					
						2015-12-15 17:52:45 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							cbc426ee62 
							
						 
					 
					
						
						
							
							SPV: Implement GLSL built-in bitcast functions.  
						
						
						
						
					 
					
						2015-12-15 16:03:10 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e7c83cfb8c 
							
						 
					 
					
						
						
							
							SPV GLSL.std.450: Add needed smear operations for min, max, clamp, mix, step, and smoothstep.  
						
						
						
						
					 
					
						2015-12-13 13:34:37 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							6feb4989fe 
							
						 
					 
					
						
						
							
							SPV texturing: Use comp. 2 as the 3rd comp. for Dref in ImageSampleProjDrefImplicitLod.  
						
						
						
						
					 
					
						2015-12-13 12:23:33 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							04bb8a01d6 
							
						 
					 
					
						
						
							
							SPV: Implement all matrix operators {+,-,*,/} for {matrix,scalar,vector}.  
						
						
						
						
					 
					
						2015-12-12 12:28:14 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e00e72ded1 
							
						 
					 
					
						
						
							
							SPV: Protect getStorageClass() with a test that the thing is pointer.  
						
						
						
						
					 
					
						2015-12-08 20:48:49 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							33661450c7 
							
						 
					 
					
						
						
							
							SPV: Implement OpImage functionality (emit before query).  
						
						
						
						
					 
					
						2015-12-08 19:32:47 -07:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							7a26c176ce 
							
						 
					 
					
						
						
							
							SPV: Implement GLSL interpolation built-in functions.  
						
						
						
						
					 
					
						2015-12-08 17:40:11 +08:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							8d63a3d35a 
							
						 
					 
					
						
						
							
							Avoid read past end of operands vector for EOpFrexp  
						
						... 
						
						
						
						When emitting SPIR-V code for frexp, avoid access
beyond the end of the operands vector.  When constructing
the OpExtInst, construct a new arguments vector instead of
modifying the existing operands vector.  In the case of OpFrexp,
well need that last operand later on to generate the store.
Fixes https://github.com/KhronosGroup/glslang/issues/110 
Change-Id: Ibc380fadf5e600ac491932e9ecef7afe2d72fd7f 
						
						
					 
					
						2015-12-07 16:24:31 -05:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2359bd0a1d 
							
						 
					 
					
						
						
							
							SPV: Fix extra operands when using the "struct" form of a built-in taking an 'out' param.  
						
						
						
						
					 
					
						2015-12-06 19:29:11 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e721f49dbd 
							
						 
					 
					
						
						
							
							SPV: Distinguish between std140 and std430 layouts, and correctly use alignments as the base for strides.  
						
						
						
						
					 
					
						2015-12-06 19:17:49 -07:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							71519fe70b 
							
						 
					 
					
						
						
							
							SPV: Fix an issue related with using CubeArrayShadow for texture()  
						
						
						
						
					 
					
						2015-11-22 21:43:05 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							55e7d11ce8 
							
						 
					 
					
						
						
							
							SPIR-V: Move from Version .99 Rev 31 to Version 1.0, Rev 2.  
						
						
						
						
					 
					
						2015-11-15 22:31:41 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7c1aa1026e 
							
						 
					 
					
						
						
							
							SPV: Implement short circuiting of && and || when emitting SPIR-V.  
						
						
						
						
					 
					
						2015-10-15 13:50:48 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							da581a2b95 
							
						 
					 
					
						
						
							
							GL_ARB_shader_draw_parameters:  From @amdrexu, implement extension.  
						
						
						
						
					 
					
						2015-10-14 14:10:30 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e690332c3c 
							
						 
					 
					
						
						
							
							SPV: Add modes for spacing, depth, depth replacing, winding, and point mode.  
						
						
						
						
					 
					
						2015-10-13 16:29:02 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ee21fc9081 
							
						 
					 
					
						
						
							
							SPV: Fix missing 'Member' operand to OpArrayLength.  
						
						
						
						
					 
					
						2015-09-21 21:50:29 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b56a26ab4d 
							
						 
					 
					
						
						
							
							SPV: Generate the LocalSize Execution Mode for compute shaders.  
						
						
						
						
					 
					
						2015-09-16 16:04:05 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							56bab0483a 
							
						 
					 
					
						
						
							
							SPV: Minor corrections to previous big merge for images and atomics.  
						
						
						
						
					 
					
						2015-09-16 11:42:16 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							6b86d496c2 
							
						 
					 
					
						
						
							
							Add new test case for image functions and fix issues caught by this test  
						
						
						
						
					 
					
						2015-09-16 17:48:22 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							bba5c80957 
							
						 
					 
					
						
						
							
							Merge master branch from upstream  
						
						
						
						
					 
					
						2015-09-16 13:20:37 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							04db3f5aa4 
							
						 
					 
					
						
						
							
							Fix issues from review comments and those relevant to texelFetch  
						
						
						
						
					 
					
						2015-09-16 11:44:02 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							3e60a6ff13 
							
						 
					 
					
						
						
							
							SPV OpAtomicCompareSwap: Generate correct operand order and number of operands.  
						
						
						
						
					 
					
						2015-09-14 22:45:16 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e770b3e6cf 
							
						 
					 
					
						
						
							
							SPV return from main: Simplify a legacy design such returns are not jumps to exit block.  
						
						... 
						
						
						
						Structured control-flow rules allow leaving the middle of a construct through
a return, but not through a jump to a block that does a return.
Addresses issue #58 . 
						
						
					 
					
						2015-09-14 21:08:58 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							30f9258d5e 
							
						 
					 
					
						
						
							
							Merge master branch from upstream  
						
						
						
						
					 
					
						2015-09-14 10:38:56 +08:00 
						 
				 
			
				
					
						
							
							
								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 
						 
				 
			
				
					
						
							
							
								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 
							
						 
					 
					
						
						
						
						
							
						
						
							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