Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							2725323bba 
							
						 
					 
					
						
						
							
							SPV: Fix an issue caused by bool-to-uint32 conversion.  
						
						... 
						
						
						
						This issue is related with the commit
103bef9d74d768f0690ed53f52681baead384d1e. 
						
						
					 
					
						2016-02-24 12:27:10 +08:00 
						 
				 
			
				
					
						
							
							
								rdb 
							
						 
					 
					
						
						
						
						
							
						
						
							32084e889d 
							
						 
					 
					
						
						
							
							Fix compilation issues with MSVC 2010  
						
						... 
						
						
						
						(mostly by eliminating use of range-based for loops and std::tie) 
						
						
					 
					
						2016-02-23 22:17:38 +01:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							1da878f6d1 
							
						 
					 
					
						
						
							
							SPV: Add support for memory qualifiers.  
						
						
						
						
					 
					
						2016-02-21 21:02:08 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							0967748fbc 
							
						 
					 
					
						
						
							
							SPV: Fix 'location' inheritance bug.  
						
						
						
						
					 
					
						2016-02-19 12:21:50 -07:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							5eafa472d3 
							
						 
					 
					
						
						
							
							SPV: Support the new OpCode - OpImageSparseRead  
						
						
						
						
					 
					
						2016-02-19 22:24:03 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							6c292d3ba7 
							
						 
					 
					
						
						
							
							SPV: Implement Vulkan version of GLSL (KHR_vulkan_glsl).  
						
						
						
						
					 
					
						2016-02-15 21:46:55 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							019f08fcd8 
							
						 
					 
					
						
						
							
							SPV: Fix issue  #159 : use ExplicitLod forms for non-fragment stages.  
						
						
						
						
					 
					
						2016-02-15 15:40:42 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5d0fa9781b 
							
						 
					 
					
						
						
							
							SPV Capabilities: StorageImageExtendedFormats, StorageImageReadWithoutFormat, and StorageImageWriteWithoutFormat.  
						
						
						
						
					 
					
						2016-02-15 11:57:00 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5e80113939 
							
						 
					 
					
						
						
							
							SPV Capabilities: SampleRateShading, SparseResidency, MinLod, and ImageQuery.  
						
						
						
						
					 
					
						2016-02-15 11:09:46 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							103bef9d74 
							
						 
					 
					
						
						
							
							SPV: Handle GLSL bool loads from a uniform buffer as a conversion from int -> bool.  
						
						... 
						
						
						
						SPIR-V bool is abstract; it has no bit pattern for storage with transparent memory.
OpenGL's convention is a bool in a uniform buffer is 32-bit int with non-0 being 'true'. 
						
						
					 
					
						2016-02-08 21:41:30 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							32cfd49b68 
							
						 
					 
					
						
						
							
							SPV: RelaxedPrecision: Plumb this through the full AST->SPV translator.  
						
						
						
						
					 
					
						2016-02-02 13:55:29 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							9218759ebb 
							
						 
					 
					
						
						
							
							SPV: Address superset of issue  #151 : missing OpCapability instructions.  
						
						... 
						
						
						
						This commit adds:
CapabilityGeometryPointSize
CapabilityTessellationPointSize
CapabilityClipDistance
CapabilityCullDistance
CapabilityMultiViewport
CapabilityTransformFeedback
CapabilityGeometryStreams
CapabilityDerivativeControl
CapabilityInterpolationFunction 
						
						
					 
					
						2016-02-01 13:45:25 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							cd26144d24 
							
						 
					 
					
						
						
							
							SPV: the OpImageTexelPointer sample 0 should be <id> of 0, not literal 0.  
						
						
						
						
					 
					
						2016-01-22 09:54:12 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7b9fa25bad 
							
						 
					 
					
						
						
							
							SPV: Add recursive distrubition of 'location' across structure members.  
						
						
						
						
					 
					
						2016-01-21 18:56:57 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7a53f76d38 
							
						 
					 
					
						
						
							
							SPV: Add unary-matrix operations, operating at vector level.  
						
						
						
						
					 
					
						2016-01-20 11:19:27 -07:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							213bbbe4a7 
							
						 
					 
					
						
						
							
							Split loop header from condition testing for for/while loops.  
						
						
						
						
					 
					
						2016-01-20 11:51:43 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							ed55bcd9f8 
							
						 
					 
					
						
						
							
							Don't remove SPIR-V blocks before codegen.  
						
						... 
						
						
						
						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. 
						
						
					 
					
						2016-01-19 21:18:14 -05:00 
						 
				 
			
				
					
						
							
							
								Dejan Mircevski 
							
						 
					 
					
						
						
						
						
							
						
						
							e7f6cac1bd 
							
						 
					 
					
						
						
							
							Merge branch 'topo' into loopgen-after-readable-order  
						
						
						
						
					 
					
						2016-01-19 16:47:41 -05: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 
						 
				 
			
				
					
						
							
							
								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 
							
						 
					 
					
						
						
						
						
							
						
						
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							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