John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ab89bbe702 
							
						 
					 
					
						
						
							
							Merge branch 'overloaded-400' of github.com:KhronosGroup/glslang  
						
						
						
						
					 
					
						2016-08-23 18:30:20 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							32c169dbdf 
							
						 
					 
					
						
						
							
							Front-end: Warn for likely missed change in default precisions.  
						
						... 
						
						
						
						This is part of the change to have desktop shaders respect precision
qualifiers on Vulkan, but since the defaults are all highp, and that's
different from ES fragment shaders, detect likely cases and warn about
them (but being careful to not be too noisy if it's unlikely to be a
problem). 
						
						
					 
					
						2016-08-23 18:13:08 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							54571c2519 
							
						 
					 
					
						
						
							
							Vulkan: Have desktop shaders respect precision qualifiers.  
						
						... 
						
						
						
						Sets highp defaults for the appropriate types, for all stages,
and turns on precision qualifiers for non-ES shaders.  Required
fixing some qualifier orders for desktop built-in declarations
for pre-420 shaders. 
						
						
					 
					
						2016-08-23 18:12:25 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							efe9724795 
							
						 
					 
					
						
						
							
							HLSL: Add EHTokStringConstant, so that string attributes may be parsed  
						
						
						
						
					 
					
						2016-08-22 17:13:17 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							370234888d 
							
						 
					 
					
						
						
							
							Front-end: Add a function selector under implicit type conversion.  
						
						... 
						
						
						
						Use the new function selector for #version 400 and above,
parameterized for the GLSL #version 400 selection rules.
This can be used for both GLSL and HLSL, and other languages
as well. 
						
						
					 
					
						2016-08-21 14:26:27 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b9e39120b4 
							
						 
					 
					
						
						
							
							HLSL: Partially address issue  #463 : accept GLSL layout(...).  
						
						... 
						
						
						
						This includes all "per variable" layout qualifiers, but the
key ones mattering and tested for now are:
  set=
  binding=
  constant_id=
  push_constant 
						
						
					 
					
						2016-08-17 17:38:45 -06:00 
						 
				 
			
				
					
						
							
							
								Dan Baker 
							
						 
					 
					
						
						
						
						
							
						
						
							2c646b7afa 
							
						 
					 
					
						
						
							
							Updating tests, sadly every single HLSL test needs updating becuase of the language identifier  
						
						
						
						
					 
					
						2016-08-15 16:25:55 -04:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							61da5e41f7 
							
						 
					 
					
						
						
							
							HLSL: Put intrinsics in symbol table for all stages  
						
						
						
						
					 
					
						2016-08-11 07:29:30 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							c4a1307403 
							
						 
					 
					
						
						
							
							HLSL: add implicit promotions for assignments and function returns.  
						
						
						
						
					 
					
						2016-08-09 13:48:47 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							426542ba57 
							
						 
					 
					
						
						
							
							Front-end: Fix issue  #443 : dvec3 uses only 2 components of second location.  
						
						
						
						
					 
					
						2016-08-08 15:34:00 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							34177cd778 
							
						 
					 
					
						
						
							
							Tests: Test base case for fixing issue  #443 .  
						
						
						
						
					 
					
						2016-08-08 15:29:25 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4583b61e20 
							
						 
					 
					
						
						
							
							HLSL: Smear scalars to match vectors for relational operations.  
						
						... 
						
						
						
						Yield a vector relational compare and a vector result. 
						
						
					 
					
						2016-08-07 19:14:22 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							bbd1b0ef76 
							
						 
					 
					
						
						
							
							Tests: Add some location-decoration tests, to aid PR  #422 .  
						
						
						
						
					 
					
						2016-08-05 15:19:46 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							9f9bad09b4 
							
						 
					 
					
						
						
							
							PP: Add missing atoms that effect -E mode.  
						
						... 
						
						
						
						When preprocessing only, some tokens were emitted as <bad token>.
This fixes them to preserve their original content.
This supplants PR #182 , with a correction and test results. 
						
						
					 
					
						2016-08-04 22:46:19 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							7dfcf4d1ad 
							
						 
					 
					
						
						
							
							HLSL: Add GatherRed/Green/Blue/Alpha methods, inc 4-offset forms  
						
						
						
						
					 
					
						2016-08-03 13:34:39 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							cb88de5e5e 
							
						 
					 
					
						
						
							
							HLSL: allow semicolons between global scope declarations.  
						
						
						
						
					 
					
						2016-08-03 07:08:06 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f6640761c4 
							
						 
					 
					
						
						
							
							Front-end: Implement 2nd task of issue  #400 ; precision of result and operation.  
						
						... 
						
						
						
						From the ES spec + Bugzilla 15931 and GL_KHR_vulkan_glsl:
- Update precision qualifiers for all built-in function prototypes.
- Implement the new algorithm used to distinguish built-in function
  operation precisions from result precisions.
Also add tracking of separate result and operation precisions, and
use that in generating SPIR-V.
(SPIR-V cares about precision of operation, while the front-end
cares about precision of result, for propagation.) 
						
						
					 
					
						2016-08-02 21:48:02 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							1176530bf5 
							
						 
					 
					
						
						
							
							SPV: Prevent issue  #415  with better semantic checking.  
						
						
						
						
					 
					
						2016-07-31 12:39:46 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							11e1a073f3 
							
						 
					 
					
						
						
							
							PP: Fix issue  #407 ; handle empty identifier.  
						
						... 
						
						
						
						The sequence
  #define m()
  int m"
creates a token of no length (a string of 0 size).  Protect
against a string of 0 size as well as the existing protect
against a null string. 
						
						
					 
					
						2016-07-30 13:39:52 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7208473c69 
							
						 
					 
					
						
						
							
							PP: Non-functional; fix typos and blank spaces.  
						
						
						
						
					 
					
						2016-07-30 13:25:33 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							73d4fb5bc5 
							
						 
					 
					
						
						
							
							PP: Fix issue  #408 : # as last character in macro.  
						
						... 
						
						
						
						This would look ahead for a second #, for token pasting, and if not
found, backup one token.  This is fine, unless at the end of line,
which would backup the #, rather than the look ahead. 
						
						
					 
					
						2016-07-30 12:41:35 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							fe5a3ff2f3 
							
						 
					 
					
						
						
							
							HLSL: allow trailing commas in initializer lists & scalar initialization  
						
						
						
						
					 
					
						2016-07-30 10:47:33 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b38f071605 
							
						 
					 
					
						
						
							
							HLSL: Add back in the [subcomponent] part of a 'register' decl.  
						
						
						
						
					 
					
						2016-07-30 10:30:51 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							5964c64b2a 
							
						 
					 
					
						
						
							
							HLSL: Fix a grammar error related to constructors in parenthetical expressions  
						
						
						
						
					 
					
						2016-07-30 08:09:09 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ff13213547 
							
						 
					 
					
						
						
							
							Front-ends GLSL/HLSL: Fix initializer lists for structs of one member.  
						
						... 
						
						
						
						Single member structs initialized with an initializer list had
an incorrect argument for constructor emulation. 
						
						
					 
					
						2016-07-29 18:29:06 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							96e9f47cbb 
							
						 
					 
					
						
						
							
							HLSL: Implement the register production.  
						
						
						
						
					 
					
						2016-07-29 14:28:39 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							82d6baf86f 
							
						 
					 
					
						
						
							
							HLSL: Implement packoffset production.  
						
						
						
						
					 
					
						2016-07-29 13:03:50 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							64076ed7e9 
							
						 
					 
					
						
						
							
							HLSL: Fix binary-expression associativity and termination issue.  
						
						
						
						
					 
					
						2016-07-28 21:48:25 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fea226ba43 
							
						 
					 
					
						
						
							
							HLSL: Add shape conversions for scalar -> vector assigments.  
						
						... 
						
						
						
						Also, this allows turning on the error check for a failed assigment
when parsing.
This makes 39 HLSL tests have a working assignment that was previously
silently dropped, due to lack of this functionality. 
						
						
					 
					
						2016-07-28 18:41:20 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c552aece83 
							
						 
					 
					
						
						
							
							Merge pull request  #417  from steve-lunarg/buffers  
						
						... 
						
						
						
						HLSL: add Buffer support for Load method 
						
						
					 
					
						2016-07-28 16:56:39 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c21badf2a1 
							
						 
					 
					
						
						
							
							Merge pull request  #419  from steve-lunarg/lerp-fix  
						
						... 
						
						
						
						HLSL: add missing vec,vec,scalar form of lerp(), + test 
						
						
					 
					
						2016-07-28 16:56:25 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							2de329112b 
							
						 
					 
					
						
						
							
							HLSL: allow uint literals, and add test for numeric suffixes  
						
						
						
						
					 
					
						2016-07-28 14:49:48 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							cf57c04401 
							
						 
					 
					
						
						
							
							HLSL: add missing vec,vec,scalar form of lerp(), + test  
						
						
						
						
					 
					
						2016-07-28 13:23:22 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							d53f717fd3 
							
						 
					 
					
						
						
							
							HLSL: add Buffer support for Load method  
						
						
						
						
					 
					
						2016-07-27 15:57:31 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							414f735443 
							
						 
					 
					
						
						
							
							Front-end: Fix issue  #409 , check for implicitly-sized binding arrays.  
						
						
						
						
					 
					
						2016-07-27 14:55:06 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							68f2c144e3 
							
						 
					 
					
						
						
							
							HLSL: Add CalculateLevelOfDetail, and unimplemented errors for *Unclamped and GetSamplePosition  
						
						
						
						
					 
					
						2016-07-27 10:46:33 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							00957f8110 
							
						 
					 
					
						
						
							
							HLSL: Implement ?: grammar productions.  
						
						... 
						
						
						
						Missing are implicit conversions between int/bool/etc. 
						
						
					 
					
						2016-07-27 10:39:57 -06:00 
						 
				 
			
				
					
						
							
							
								steve-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							1e19d90043 
							
						 
					 
					
						
						
							
							HLSL: add 2DMS texture formats, and matching Load / GetDimensions support  
						
						
						
						
					 
					
						2016-07-27 07:37:21 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							8c8505c604 
							
						 
					 
					
						
						
							
							SPV: For AST interpolateAt* ops consuming a swizzle, invert the order.  
						
						... 
						
						
						
						Apply the interpolation first, then apply the swizzle to the result,
the inverse of the order requested by the AST.  This fixes issue #411 . 
						
						
					 
					
						2016-07-26 12:53:54 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							731cd83ef6 
							
						 
					 
					
						
						
							
							Merge pull request  #405  from steve-lunarg/samplers  
						
						... 
						
						
						
						HLSL: Add gather, improve proto generator machine for upcoming 2DMS/S… 
						
						
					 
					
						2016-07-26 09:40:46 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							64723c20b5 
							
						 
					 
					
						
						
							
							Merge pull request  #406  from steve-lunarg/pp_line  
						
						... 
						
						
						
						HLSL: enable #line extension by default for HLSL source. 
						
						
					 
					
						2016-07-26 09:39:48 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							3d157c510f 
							
						 
					 
					
						
						
							
							HLSL: cbuffer and tbuffer grammar and production.  
						
						
						
						
					 
					
						2016-07-25 16:05:33 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							6256146ef3 
							
						 
					 
					
						
						
							
							HLSL: enable #line extension by default for HLSL source.  
						
						
						
						
					 
					
						2016-07-23 10:45:00 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							a2f3d285a8 
							
						 
					 
					
						
						
							
							HLSL: Add gather, improve proto generator machine for upcoming 2DMS/Shadow  
						
						
						
						
					 
					
						2016-07-22 12:46:11 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							630e1bc636 
							
						 
					 
					
						
						
							
							Merge pull request  #402  from steve-lunarg/samplers  
						
						... 
						
						
						
						HLSL: Add SampleLevel method 
						
						
					 
					
						2016-07-21 15:47:27 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c8f6903b1d 
							
						 
					 
					
						
						
							
							Front-end: Fix default layout(component) widths and correct for doubles.  
						
						... 
						
						
						
						Replaces PR #372 . 
						
						
					 
					
						2016-07-21 15:43:00 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5c08ecb419 
							
						 
					 
					
						
						
							
							Tests: line-number change only: make room for more component tests.  
						
						
						
						
					 
					
						2016-07-21 15:39:23 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							3ef7852ef6 
							
						 
					 
					
						
						
							
							HLSL: Add SampleLevel method  
						
						
						
						
					 
					
						2016-07-21 15:02:30 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							f245101954 
							
						 
					 
					
						
						
							
							HLSL: Add texture Load method & decomposition  
						
						
						
						
					 
					
						2016-07-21 09:42:35 -06:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							a78b02941b 
							
						 
					 
					
						
						
							
							HLSL: Add SampleCmp and SampleCmpLevelZero texture methods  
						
						
						
						
					 
					
						2016-07-20 09:57:03 -06:00