John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7015bd658e 
							
						 
					 
					
						
						
							
							Web: Remove/rationalize a set of *_EXTENSIONS, using GLSLANG_WEB.  
						
						... 
						
						
						
						Focus was on the front end (not SPIR-V), minus the grammar.
Reduces #ifdef count by around 320 and makes the web build 270K smaller,
which is about 90% the  target size.
The grammar and scanner will be another step, as will the SPIR-V backend.
This makes heavy use of methods #ifdef'd to return false as a global way
of turning off code, relying on C++ DCE to do the rest. 
						
						
					 
					
						2019-08-20 23:21:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e66dace97e 
							
						 
					 
					
						
						
							
							Web: First pass of tabling the built-in function declarations.  
						
						... 
						
						
						
						Doing this much saved about 11.5K, including adding all the infrastructure. 
						
						
					 
					
						2019-08-20 23:21:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							23d27751e8 
							
						 
					 
					
						
						
							
							Web: Selectively remove a few key features, using #ifndef GLSLANG_WEB  
						
						... 
						
						
						
						Save about 100K.
N.B.: This is done by eliminating a function call, at a high level,
not by #ifdef'ing a bunch of code.
Also, removed no longer needed *_EXTENSION #ifdef in the code not
needed by GLSLANG_WEB. 
						
						
					 
					
						2019-08-20 23:21:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							bfc21ff1a9 
							
						 
					 
					
						
						
							
							Web: Change a bunch of HLSL methods from dynamic to compile-time known.  
						
						... 
						
						
						
						This saves about 7K.
By changing just a few methods to be compile-time known, a bunch of
scattered code becomes DCE. 
						
						
					 
					
						2019-08-20 23:21:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							d4ed5158d1 
							
						 
					 
					
						
						
							
							Web: Remove a few additional HLSL constructs with ENABLE_HLSL.  
						
						... 
						
						
						
						Saves about 3K. 
						
						
					 
					
						2019-08-20 23:21:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							13761069b5 
							
						 
					 
					
						
						
							
							Web: Add sanity check test suite for smaller-footprint builds.  
						
						... 
						
						
						
						For the smallest builds, google tests will not be present, in
addition to a large number of tests not being capable of running. 
						
						
					 
					
						2019-08-20 23:21:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7fc8683491 
							
						 
					 
					
						
						
							
							Merge pull request  #1813  from jeffbolznv/compositeconstruct  
						
						... 
						
						
						
						Handle SPIR-V type mismatch when constructing a composite 
						
						
					 
					
						2019-07-28 23:20:26 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							642b6ad99f 
							
						 
					 
					
						
						
							
							Merge pull request  #1844  from alelenv/ast_print_fix  
						
						... 
						
						
						
						Fix bug in printing trailing comma when dumping AST for a structure. 
						
						
					 
					
						2019-07-28 21:33:30 -06:00 
						 
				 
			
				
					
						
							
							
								Ashwin Lele 
							
						 
					 
					
						
						
						
						
							
						
						
							c1e61d6cff 
							
						 
					 
					
						
						
							
							Fix bugs in missing Builtin decoration for some NV builtins for tessellation  
						
						... 
						
						
						
						control shaders.
Fix bug in member remapping. 
						
						
					 
					
						2019-07-22 12:36:38 -07:00 
						 
				 
			
				
					
						
							
							
								Ashwin Lele 
							
						 
					 
					
						
						
						
						
							
						
						
							a76d1c211b 
							
						 
					 
					
						
						
							
							Fix bug in printing trailing comma when dumping AST for a structure.  
						
						
						
						
					 
					
						2019-07-17 14:40:58 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e383c5f55d 
							
						 
					 
					
						
						
							
							Merge pull request  #1837  from KhronosGroup/fix-NV_compute_shader_derivatives  
						
						... 
						
						
						
						ESSL: Fix  #1823 : Conditions for when derivatives are in compute shader. 
						
						
					 
					
						2019-07-15 19:49:46 -06:00 
						 
				 
			
				
					
						
							
							
								Sahil Parmar 
							
						 
					 
					
						
						
						
						
							
						
						
							f2dcc87c6a 
							
						 
					 
					
						
						
							
							Allow unsized view array dimension for non-block perviewNV attributes  
						
						
						
						
					 
					
						2019-07-15 16:14:00 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							50dc8c350b 
							
						 
					 
					
						
						
							
							Merge pull request  #1824  from KhronosGroup/fix-spec-expr-array-check  
						
						... 
						
						
						
						SPV: Fix  #1783 : Don't do bounds checking for spec-const-expression size 
						
						
					 
					
						2019-07-15 10:55:30 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							33081e01d3 
							
						 
					 
					
						
						
							
							ESSL:  Fix   #1823 : Conditions for when derivatives are in compute shader.  
						
						
						
						
					 
					
						2019-07-15 01:20:18 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							1a6e8534ce 
							
						 
					 
					
						
						
							
							GLSL:  Fix   #1833 : Don't constant fold integer mix to a float.  
						
						
						
						
					 
					
						2019-07-13 12:23:11 -06:00 
						 
				 
			
				
					
						
							
							
								Jason Macnak 
							
						 
					 
					
						
						
						
						
							
						
						
							dbd4c3ce11 
							
						 
					 
					
						
						
							
							spirv: Generate missing SampleMaskOverrideCoverageNV capability op  
						
						... 
						
						
						
						The SampleMaskOverrideCoverageNV capability should be declared when
gl_SampleMask is used. 
						
						
					 
					
						2019-07-12 14:33:02 -07:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							c1ad396258 
							
						 
					 
					
						
						
							
							Avoid generating 8/16-bit constants when 8/16-bit arithmetic extensions aren't enabled  
						
						
						
						
					 
					
						2019-07-10 15:04:29 -05:00 
						 
				 
			
				
					
						
							
							
								Alan Baker 
							
						 
					 
					
						
						
						
						
							
						
						
							87dd98f0e9 
							
						 
					 
					
						
						
							
							Test updates  
						
						
						
						
					 
					
						2019-07-08 14:14:23 -04:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							96524f9168 
							
						 
					 
					
						
						
							
							SPV:  Fix   #1783 : Don't do bounds checking for spec-const-expression size  
						
						... 
						
						
						
						It's okay for symbolic spec-consts, but without constant folding,
not okay when the array size is an expression. 
						
						
					 
					
						2019-07-03 09:37:25 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4b4b41a634 
							
						 
					 
					
						
						
							
							HLSL:  Fix   #1815 : Don't constant fold spec-constant array indexing.  
						
						
						
						
					 
					
						2019-07-03 01:28:51 -06:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							6a50a7850d 
							
						 
					 
					
						
						
							
							update spirv-headers to pick up demote_to_helper_invocation  
						
						
						
						
					 
					
						2019-07-02 10:58:15 -05:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							ba6170b534 
							
						 
					 
					
						
						
							
							Implement GL_EXT_demote_to_helper_invocation  
						
						
						
						
					 
					
						2019-07-01 09:36:15 -05:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							531344905f 
							
						 
					 
					
						
						
							
							Handle SPIR-V type mismatch when constructing a composite  
						
						
						
						
					 
					
						2019-06-25 13:32:35 -05:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							4b5c498923 
							
						 
					 
					
						
						
							
							Add a bunch of missing cases to promoteConstantUnion. Use macros to expand all the cases more simply.  
						
						
						
						
					 
					
						2019-06-22 22:28:25 -05:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							8912336663 
							
						 
					 
					
						
						
							
							Add test for constant type conversion  
						
						
						
						
					 
					
						2019-06-21 23:32:25 -05:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							9c14f77f5d 
							
						 
					 
					
						
						
							
							AST/SPV:  Fix   #930 : translate uvec4 <-> uint64 for SubgroupGeMask et. al.  
						
						... 
						
						
						
						On reading built-in variables SubgroupEqMask, SubgroupGeMask, SubgroupGtMask,
SubgroupLeMask, and SubgroupLtMask, the AST expects 64-bit ints, while SPIR-V
is defined as vectors of 32-bit ints.
The declaration type has to be translated in the opposite direction. 
						
						
					 
					
						2019-06-18 00:36:17 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a9b00ac5d5 
							
						 
					 
					
						
						
							
							Merge pull request  #1806  from KhronosGroup/nan-clamp  
						
						... 
						
						
						
						SPV: Add a switch for favoring non-NaN operands in min, max, and clamp. 
						
						
					 
					
						2019-06-18 00:26:25 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							5d73a3c95c 
							
						 
					 
					
						
						
							
							Merge pull request  #1698  from jeffbolznv/private_storage_variables  
						
						... 
						
						
						
						Add Float16/Int8/Int16 capabilities for private variables and function parameters 
						
						
					 
					
						2019-06-17 23:42:13 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							605afc7b1b 
							
						 
					 
					
						
						
							
							SPV: Add a switch for favoring non-NaN operands in min, max, and clamp.  
						
						
						
						
					 
					
						2019-06-17 23:33:09 -06:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							38a52fca93 
							
						 
					 
					
						
						
							
							Add gl_SemanticsVolatile to GL_KHR_memory_scope_semantics, and make volatile-qualified atomics generate MemorySemanticsVolatile when using the Vulkan memory model  
						
						
						
						
					 
					
						2019-06-14 09:57:01 -05:00 
						 
				 
			
				
					
						
							
							
								Alan Baker 
							
						 
					 
					
						
						
						
						
							
						
						
							e86cc18e8c 
							
						 
					 
					
						
						
							
							Update test expectations for new SPIRV-Tools  
						
						
						
						
					 
					
						2019-06-13 08:54:31 -04:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							2cb2f197a7 
							
						 
					 
					
						
						
							
							Add support for GL_NV_shader_sm_builtins  
						
						... 
						
						
						
						Including spirv and AST tests
Also increase size of TBuiltInVariable bitfields since we've now exceeded 127
and add a static_assert to make this easier to find next time it happens! 
						
						
					 
					
						2019-06-08 08:53:11 -04:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							92b5c9ee91 
							
						 
					 
					
						
						
							
							GLSL: Revert f6873f7 to  fix   #1764 .  
						
						
						
						
					 
					
						2019-06-08 04:30:46 -06:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							fd556e32b3 
							
						 
					 
					
						
						
							
							Use spvValidatorOptionsSetBeforeHlslLegalization for pre-legalized HLSL  
						
						
						
						
					 
					
						2019-06-07 14:42:08 -05:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							c6f0ce8dbc 
							
						 
					 
					
						
						
							
							Support GL_ARB_fragment_shader_interlock  
						
						
						
						
					 
					
						2019-06-03 11:55:25 -05:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							593a4e0aa5 
							
						 
					 
					
						
						
							
							Fix subgroup support for ray tracing  
						
						... 
						
						
						
						Closes  #1735 
GlslangToSpv.cpp
- minor formatting cleanup
BaseTypes.h
- minor formatting cleanup
- add subgroup builtins to GetBuiltInVariableString
  (was resulting in "unknown built-in variable" messages in test output)
Initialize.cpp
- better naming and re-use of strings for subgroup builtin variable declarations
- define subgroup builtin variables in ray-tracing shaders
intermOut.cpp
- add handling of the EOpSubgroupParition* variables
  (was resulting in "ERROR: Bad aggregation op" messages in test output)
Update test results. 
					
						2019-05-31 14:17:36 -04:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							c3e60ad9b6 
							
						 
					 
					
						
						
							
							Add AST tests for ray tracing shaders  
						
						... 
						
						
						
						with subgroup touch tests (error and non-error cases)
Currently the subgroup built-ins are NOT giving the correct output.
This is fixed in the next commit. 
						
						
					 
					
						2019-05-31 14:17:22 -04:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							3418cb4c98 
							
						 
					 
					
						
						
							
							Add AST tests for mesh and task shaders  
						
						... 
						
						
						
						with subgroup touch testing (error and non-error cases)
Add missing symbolTable.relateToOperator("subgroupMemoryBarrierShared") call for
Mesh/Task shaders so they don't assert in ParseHelper.cpp 
						
						
					 
					
						2019-05-31 14:17:13 -04:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							51760c88ca 
							
						 
					 
					
						
						
							
							Add more subgroup testing  
						
						... 
						
						
						
						Touch test all subgroup builtins in vert, tesc, tese, geom, frag, compute shaders
before and after enabling extensions to make sure the correct errors are generated
and then not generated (after enablement). 
						
						
					 
					
						2019-05-31 14:16:52 -04:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							8adc2f565e 
							
						 
					 
					
						
						
							
							Allow runtime-sized arrays of acceleration structures  
						
						
						
						
					 
					
						2019-05-30 12:45:15 -05:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							40b1a9e14e 
							
						 
					 
					
						
						
							
							Fix include guard for GL_EXT_multiview  
						
						
						
						
					 
					
						2019-05-28 15:23:19 -04:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							9bb17cd0eb 
							
						 
					 
					
						
						
							
							Return consistent names from CapabilityString  
						
						... 
						
						
						
						Don't prefix with "Capability" since the majority of them don't.
Also add missing CapabilityImageFootprintNV 
						
						
					 
					
						2019-05-28 15:23:10 -04:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							8b920c793a 
							
						 
					 
					
						
						
							
							Update SPIRV-Tools, SPIRV-Headers  
						
						... 
						
						
						
						Headers update fixes validation of spv.shaderBallotAMD. 
						
						
					 
					
						2019-05-16 02:59:54 -04:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b64952eddd 
							
						 
					 
					
						
						
							
							SPV 1.4: Move to 1.4 validation, removing all 1.4 validation failures.  
						
						
						
						
					 
					
						2019-05-10 00:02:45 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f43c739ac5 
							
						 
					 
					
						
						
							
							SPV 1.4: Emit SignExtend and ZeroExtend for integer image reads/writes.  
						
						
						
						
					 
					
						2019-05-10 00:02:45 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							61a5ce190a 
							
						 
					 
					
						
						
							
							SPV 1.4: Lookup tables: Use variable initializer and NonWritable...  
						
						... 
						
						
						
						...when doing a variable lookup on an array of constants. 
						
						
					 
					
						2019-05-10 00:02:45 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fbb6bdf046 
							
						 
					 
					
						
						
							
							SPV 1.4: Add support for OpCopyLogical, careful of Boolean differences.  
						
						
						
						
					 
					
						2019-05-10 00:02:45 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							1f4d04687b 
							
						 
					 
					
						
						
							
							SPV 1.4: Implement the 5 new loop controls.  
						
						
						
						
					 
					
						2019-05-10 00:02:45 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							0c1e71a123 
							
						 
					 
					
						
						
							
							SPV 1.4: Use OpSelect for trivial typed non-scalar/vector expressions.  
						
						
						
						
					 
					
						2019-05-10 00:02:45 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							cfea59d357 
							
						 
					 
					
						
						
							
							SPV 1.4: Add testing infrastructure for SPV 1.4 tests.  
						
						... 
						
						
						
						This includes the test for the first feature of OpEntryPoint. 
						
						
					 
					
						2019-05-10 00:02:45 -06:00