LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							1b7fd0f7b7 
							
						 
					 
					
						
						
							
							Add asdouble, fma, & mad intrinsics and change profile to allow doubles when parsing prototypes  
						
						
						
						
					 
					
						2016-06-28 15:38:38 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e5a807276f 
							
						 
					 
					
						
						
							
							Merge pull request  #349  from steve-lunarg/intrinsics  
						
						... 
						
						
						
						HLSL: Add lerp, fix sincos ret, add ret type tests, non-square mats, tx semantics 
						
						
					 
					
						2016-06-28 15:34:11 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							22bca551a8 
							
						 
					 
					
						
						
							
							Merge pull request  #354  from yavn/fix_off_by_one_limit_check  
						
						... 
						
						
						
						Front-end: allow max size built-in arrays like gl_ClipDistance 
						
						
					 
					
						2016-06-28 13:24:18 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5bc4d9a26f 
							
						 
					 
					
						
						
							
							HLSL: Airplane work: break/continue/discard grammar, and decls for for/if/while.  
						
						
						
						
					 
					
						2016-06-27 21:12:07 -06:00 
						 
				 
			
				
					
						
							
							
								Maciej Jesionowski 
							
						 
					 
					
						
						
						
						
							
						
						
							bbbcb5b2eb 
							
						 
					 
					
						
						
							
							Front-end: allow max size built-in arrays like gl_ClipDistance  
						
						... 
						
						
						
						Fixed off-by-one error with gl_MaxClipDistances and similar limits. 
						
						
					 
					
						2016-06-27 12:44:15 +02:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							4624a02e21 
							
						 
					 
					
						
						
							
							Add lerp, fix sincos return type, ret type tests, non-square mats, HLSL->AST tx semantics  
						
						
						
						
					 
					
						2016-06-21 10:10:48 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							6e72fddaa2 
							
						 
					 
					
						
						
							
							Add HLSL memory barrier intrinsics, fix dst, add lit & EvaluateAttributeSnapped  
						
						
						
						
					 
					
						2016-06-20 09:53:59 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							19b92fff7e 
							
						 
					 
					
						
						
							
							HLSL: Basic array grammar.  
						
						
						
						
					 
					
						2016-06-19 11:50:34 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							93a162a857 
							
						 
					 
					
						
						
							
							HLSL: Handle "." for structure dereference and swizzle.  
						
						
						
						
					 
					
						2016-06-17 17:16:27 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5aa59e2044 
							
						 
					 
					
						
						
							
							HLSL: Map parameter qualifiers from generic to function-specific and entry-point specific.  
						
						
						
						
					 
					
						2016-06-17 15:52:46 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c3387d33ee 
							
						 
					 
					
						
						
							
							HLSL: Support semantics in function parameter declarations.  
						
						
						
						
					 
					
						2016-06-17 14:21:02 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							21f1286f57 
							
						 
					 
					
						
						
							
							Front-end: Implement GL_EXT_shader_non_constant_global_initializers.  
						
						... 
						
						
						
						This lets ES shaders use non-constant initializers for non-constant globals. 
						
						
					 
					
						2016-06-17 12:43:31 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b901ade058 
							
						 
					 
					
						
						
							
							SPV: Non-functional: Condense SPV-related versioning, and rationalize all uses.  
						
						
						
						
					 
					
						2016-06-16 23:31:29 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							65336488a8 
							
						 
					 
					
						
						
							
							SPV: projective texturing: move the project coordinate.  
						
						... 
						
						
						
						SPV doesn't allow gaps in the components of the texturing coordinate.
It also removes the shadow reference.
So, close up the components so all used components are together. 
						
						
					 
					
						2016-06-16 14:06:26 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							76d4dfcd51 
							
						 
					 
					
						
						
							
							SPV non-functional: minor readability improvements for texturing.  
						
						
						
						
					 
					
						2016-06-16 12:43:23 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ac666e7368 
							
						 
					 
					
						
						
							
							Front-end ESSL: require precision declarations for images.  
						
						
						
						
					 
					
						2016-06-14 22:12:20 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							9000bd5eb6 
							
						 
					 
					
						
						
							
							Front-end: Make ES floatBitsToInt/intBitsToFloat/etc. all be highp.  
						
						
						
						
					 
					
						2016-06-14 20:38:58 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c51287d744 
							
						 
					 
					
						
						
							
							SPV: Update to spec. decisions (and issue  #205 ) for barrier().  
						
						... 
						
						
						
						A barrier (ESSL/GLSL) or OpControlBarrier when in a tessellation control
shader also means doing memory synchronization for output variables. 
						
						
					 
					
						2016-06-14 19:50:26 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							589107095c 
							
						 
					 
					
						
						
							
							Implement atomic ops, bit conversions, fix fwidth stage mask, fix saturate dest modifier.  
						
						
						
						
					 
					
						2016-06-13 20:50:36 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							cd784bc561 
							
						 
					 
					
						
						
							
							Merge pull request  #337  from steve-lunarg/intrinsics  
						
						... 
						
						
						
						HLSL: Add decompositions for some intrinsics. 
						
						
					 
					
						2016-06-13 08:54:45 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							630dd7da43 
							
						 
					 
					
						
						
							
							HLSL: Flesh out misc. declaration grammar: semantics/registers/annotations/precise/etc.  
						
						... 
						
						
						
						Details within these bear even more fleshing out, but would like to have
that driven by actual need. 
						
						
					 
					
						2016-06-12 23:54:31 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e6e7494e2a 
							
						 
					 
					
						
						
							
							HLSL: Implement basic "struct" grammar.  
						
						
						
						
					 
					
						2016-06-12 23:54:31 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							592860cae5 
							
						 
					 
					
						
						
							
							Add decompositions for some HLSL intrinsics.  
						
						
						
						
					 
					
						2016-06-10 17:11:18 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							41ebc42926 
							
						 
					 
					
						
						
							
							Merge pull request  #335  from jekstrand/sampler-params  
						
						... 
						
						
						
						SPV: Fix pointer address spaces for sampler function parameters 
						
						
					 
					
						2016-06-09 20:42:23 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							077e052a8f 
							
						 
					 
					
						
						
							
							HLSL: Implement proper nesting of symbol-table scopes and identifier searching.  
						
						
						
						
					 
					
						2016-06-09 02:03:46 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							71351de879 
							
						 
					 
					
						
						
							
							HLSL: Add all int/float/bool/uint matrix types, void for functions, and a few others.  
						
						
						
						
					 
					
						2016-06-09 01:33:10 -06:00 
						 
				 
			
				
					
						
							
							
								Jason Ekstrand 
							
						 
					 
					
						
						
						
						
							
						
						
							ed15ef1a5b 
							
						 
					 
					
						
						
							
							GlslangToSpv: Pass the pointer directly into the client function for opaque types  
						
						... 
						
						
						
						For opaque types such as samplers, images, and atomic counters, we want to
reference the actual object in the child function.  For a long time, we
used a shadow variable and made a copy of the image/sampler.  In 76d0ac1a,
this was changed to not shadow samplers.  However, this didn't cover all
opaque types and it also didn't get the pointer storage classes right.
This commit fixes both of these issues.
Fixes  #324  
						
						
					 
					
						2016-06-08 17:22:46 -07:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							a901ffed40 
							
						 
					 
					
						
						
							
							Defer capability decl for ClipDistance, CullDistance, PointSize until actual use  
						
						... 
						
						
						
						The compiler will mark struct members with those builtins, but won't
declare the capability until that member is accessed by some executable
instruction.
Test changes:
- spv.430.vert: was missing ClipDistance capability.
- spv.precise.tese: remove TessellationPointSize capability. 
						
						
					 
					
						2016-06-08 09:30:04 -04:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							80cb324ff6 
							
						 
					 
					
						
						
							
							Front-end: Fix issue  #146 : which versions allow double in/out.  
						
						
						
						
					 
					
						2016-06-05 18:52:05 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							133253b6ee 
							
						 
					 
					
						
						
							
							Front-end: Fix issue  #147 : ensure layout(index=N) has N in [0,1].  
						
						
						
						
					 
					
						2016-06-05 17:25:34 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							119f8f6906 
							
						 
					 
					
						
						
							
							HLSL: Flesh out the loop grammar and productions.  
						
						
						
						
					 
					
						2016-06-05 15:44:07 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							0d2b6de45b 
							
						 
					 
					
						
						
							
							HLSL: Attribute grammar and if-else grammar/productions.  
						
						
						
						
					 
					
						2016-06-05 12:32:18 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							1cc1a2813e 
							
						 
					 
					
						
						
							
							HLSL: 1) Implement lookahead buffers/stacks for token advance/recede, 2) use it for cast operation.  
						
						... 
						
						
						
						The grammar now accepts type casts, like "(int)x", but that
has to be disambiguated from "(a + b)", needed deeper lookahead
and backing up than what existed so far. 
						
						
					 
					
						2016-06-03 16:57:53 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							643fcb5b43 
							
						 
					 
					
						
						
							
							Add negative intrinsics tests  
						
						
						
						
					 
					
						2016-06-03 16:28:57 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							ef764a24b2 
							
						 
					 
					
						
						
							
							Fix for empty statement segfault.  
						
						
						
						
					 
					
						2016-06-03 10:57:03 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							4b67732c13 
							
						 
					 
					
						
						
							
							Initial implementation of direct-mapped subset of HLSL intrinsics with type subset.  
						
						... 
						
						
						
						This checkin implements about half of the HLSL intrinsics for a subset of their
entire type support (but a useful subset).  The uncommented lines in
TBuiltInParseablesHlsl::identifyBuiltIns shows which are connected. 
						
						
					 
					
						2016-06-03 08:28:29 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							a5c33d6ffb 
							
						 
					 
					
						
						
							
							SPV: Fix issue  #320 : Fetch needs to extract the image.  
						
						... 
						
						
						
						GLSL takes a traditional sampler, but SPIR-V wants just the
sampled image, not the combined sampler and image. 
						
						
					 
					
						2016-06-02 23:47:29 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							548c3adecd 
							
						 
					 
					
						
						
							
							Front-end: Complete GL_ARB_compute_shader, previous commit was missing new barriers.  
						
						... 
						
						
						
						This amends the previous commit, which ommitted barriers in version 420 for compute shader. 
						
						
					 
					
						2016-05-30 19:38:39 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							d94c003fb7 
							
						 
					 
					
						
						
							
							Front-end: Complete GL_ARB_compute_shader implementation.  
						
						... 
						
						
						
						Core compute shaders were working, but the extension wasn't implemented. 
						
						
					 
					
						2016-05-30 19:29:40 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							0f5e3ad23c 
							
						 
					 
					
						
						
							
							Fix issue  #313 : Catch internal attempts to modify built-in symbols that don't exist.  
						
						... 
						
						
						
						Also beefed up support for running compute shaders is #version 420, but this
work is only partially done. 
						
						
					 
					
						2016-05-29 18:24:31 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7d8141987c 
							
						 
					 
					
						
						
							
							Merge pull request  #309  from jekstrand/sampler-params  
						
						... 
						
						
						
						SPV: Don't shadow sampler parameters when performing function calls 
						
						
					 
					
						2016-05-25 17:35:54 -06:00 
						 
				 
			
				
					
						
							
							
								Jason Ekstrand 
							
						 
					 
					
						
						
						
						
							
						
						
							76d0ac1a6f 
							
						 
					 
					
						
						
							
							SPV: Don't shadow sampler parameters when performing function calls  
						
						... 
						
						
						
						Fixes  #179  
					
						2016-05-25 13:49:47 -07:00 
						 
				 
			
				
					
						
							
							
								Thomas Perl 
							
						 
					 
					
						
						
						
						
							
						
						
							7bfd08d21c 
							
						 
					 
					
						
						
							
							Check for linking multiple ES shaders to the same stage  
						
						
						
						
					 
					
						2016-05-25 09:26:43 +02:00 
						 
				 
			
				
					
						
							
							
								Thomas Perl 
							
						 
					 
					
						
						
						
						
							
						
						
							0bb546f8ae 
							
						 
					 
					
						
						
							
							Fix test case for the "empty" linker test case  
						
						... 
						
						
						
						The test result should only give one error about linking
ES and non-ES shading language compilation units:
 - empty.frag: No version info, interpreted as 100, ES
 - empty2.frag: No version info, interpreted as 100, ES
 - empty3.frag: Version declared as 110, non-ES
Previously, because the new intermediate is always created
without version/profile information, there would be two
linker errors:
 1.) When merging the new intermediate with empty.frag
 2.) When merging (new intermediate + empty.frag + empty2.frag) with empty3.frag
Now, there is only one error; as the error with merging the
new intermediate with empty.frag has been removed. 
						
						
					 
					
						2016-05-24 13:24:24 +02:00 
						 
				 
			
				
					
						
							
							
								Thomas Perl 
							
						 
					 
					
						
						
						
						
							
						
						
							63d4794e8e 
							
						 
					 
					
						
						
							
							Add test case: Link 2 ESSL fragment shader units  
						
						
						
						
					 
					
						2016-05-24 13:15:01 +02:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							d82c906378 
							
						 
					 
					
						
						
							
							Vulkan: Finish semantics for what creates spec-const-semantics.  
						
						... 
						
						
						
						Note: This required adding a new test mode to see the AST for vulkan tests.
This also required reworking some deeper parts of type creation, regarding
when storage qualification and constness is deduced bottom-up or dictated
top-down. 
						
						
					 
					
						2016-05-23 23:10:18 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							bbceed7be3 
							
						 
					 
					
						
						
							
							SPV: Fix an issue of interpolation decoration.  
						
						... 
						
						
						
						GLSL interpolation qualifiers and auxiliary storage qualifiers are not
mutually exclusive. So when they are translated to SPIR-V decorations, two
independent utility methods should be employed to do this job. 
						
						
					 
					
						2016-05-21 09:45:47 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2921e0c54a 
							
						 
					 
					
						
						
							
							KHR_vulkan_glsl: name mangle distinguish pure textures.  
						
						... 
						
						
						
						Fixes issue #252 . 
						
						
					 
					
						2016-05-20 16:59:27 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							22e0d41448 
							
						 
					 
					
						
						
							
							SPV: Don't put locations on OpTypeStruct. Related to Issue  #291 .  
						
						
						
						
					 
					
						2016-05-20 15:40:53 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							eee0c73432 
							
						 
					 
					
						
						
							
							Merge pull request  #297  from antiagainst/config-tests  
						
						... 
						
						
						
						Test compiling shaders with given resource limits using GTest. 
						
						
					 
					
						2016-05-20 13:46:31 -06:00