John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4e13c90944 
							
						 
					 
					
						
						
							
							Fix   #2329 : don't use invalid initializers.  
						
						
						
						
					 
					
						2020-07-13 00:35:58 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							435dd8028b 
							
						 
					 
					
						
						
							
							SPV: RelaxedPrecision: Generalize  fix   #2293  to cover more operations.  
						
						... 
						
						
						
						This simplifies and enforces use of precision in many more places,
to help avoid accidental loss of RelaxedPrecision through intermediate
operations. Known fixes are:
- ?:
- function return values with mis-matched precision
- precision of function return values when a copy was needed to fix types 
						
						
					 
					
						2020-06-30 02:44:52 -06:00 
						 
				 
			
				
					
						
							
							
								Torosdagli 
							
						 
					 
					
						
						
						
						
							
						
						
							06c2eee720 
							
						 
					 
					
						
						
							
							GL_EXT_ray_query updates  
						
						
						
						
					 
					
						2020-03-19 16:46:30 -04:00 
						 
				 
			
				
					
						
							
							
								Daniel Koch 
							
						 
					 
					
						
						
						
						
							
						
						
							db32b243ff 
							
						 
					 
					
						
						
							
							Add support for GLSL_EXT_ray_tracing  
						
						... 
						
						
						
						and SPV_KHR_ray_tracing 
						
						
					 
					
						2020-03-17 20:42:47 -04:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							04d73731de 
							
						 
					 
					
						
						
							
							GL_EXT_debug_printf implementation  
						
						
						
						
					 
					
						2020-03-05 13:41:34 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							8985fc9108 
							
						 
					 
					
						
						
							
							Fix long lines in the SPIR-V generator, retrigger bots.  
						
						
						
						
					 
					
						2020-03-03 10:25:07 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							bbbd9a2a1f 
							
						 
					 
					
						
						
							
							Fix   #1843 : Handle built-in function output parameters to a swizzled arg  
						
						... 
						
						
						
						In GLSL/HLSL/AST,  v.zyx is an l-value, but not in SPIR-V, which cannot represent it.
So, a temporary is used instead. 
						
						
					 
					
						2020-03-03 07:21:37 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							56364b6b60 
							
						 
					 
					
						
						
							
							Copyright update, mostly to trigger bots again.  
						
						
						
						
					 
					
						2020-03-01 04:51:40 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d5f2f7b93d 
							
						 
					 
					
						
						
							
							Merge pull request  #1940  from tsuoranta/fix-gcc9  
						
						... 
						
						
						
						Fix for GCC 9 / Werror=deprecated-copy 
						
						
					 
					
						2020-01-27 01:02:08 -07:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							e43e8ba9f3 
							
						 
					 
					
						
						
							
							SPIR-V postprocessing: WEB case only needs CFG mods  
						
						... 
						
						
						
						The SPIR-V post-processing to discover capabilities and
extensions does not apply to WebGPU compilation.  So don't include
that code.
This reclaims some of the code space added by #1943  
						
						
					 
					
						2019-11-07 17:55:22 -05:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							8c3d5b4b6c 
							
						 
					 
					
						
						
							
							SPIR-V: Aggressively prune unreachable merge, continue target  
						
						... 
						
						
						
						More aggressively prune unreachable code as follows.
When no control flow edges reach a merge block or continue target:
- delete their contents so that:
  - a merge block becomes OpLabel, then OpUnreachable
  - a continue target becomes OpLabel, then an OpBranch back to the
    loop header
- any basic block which is dominated by such a merge block or continue
  target is removed as well.
- decorations targeting the removed instructions are removed.
Enables the SPIR-V builder post-processing step the GLSLANG_WEB case. 
						
						
					 
					
						2019-10-29 15:33:54 -04:00 
						 
				 
			
				
					
						
							
							
								Timo Suoranta 
							
						 
					 
					
						
						
						
						
							
						
						
							f0a85fc744 
							
						 
					 
					
						
						
							
							Fixes for gcc 9 / -Werror=deprecated-copy  
						
						... 
						
						
						
						Also enable -Werror-deprecated-copy for GCC version 9 and later. 
						
						
					 
					
						2019-10-19 15:36:34 +03:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ee8e9c1522 
							
						 
					 
					
						
						
							
							Fix   #1924 : Promote SPV_EXT_physical_storage_buffer to KHR when required.  
						
						... 
						
						
						
						If the semantics that require the KHR form over the EXT form are seen
(OpBitcast between a vector and a pointer) promote the requested extension
from the EXT to the KHR. 
						
						
					 
					
						2019-10-10 20:54:21 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							8317e6c683 
							
						 
					 
					
						
						
							
							SPV: Support SPIR-V 1.5; five extensions no longer need OpExtension.  
						
						... 
						
						
						
						The generalization to addIncorporatedExtension() also fixed a 1.3
corner case with SPV_KHR_16bit_storage. 
						
						
					 
					
						2019-09-16 07:14:10 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b9197c812e 
							
						 
					 
					
						
						
							
							Web: Make switched methods all be non-virtual, more web-dependent code,  
						
						... 
						
						
						
						added a few more HLSL flag tests.  This was mostly focused on the SPV generator.
Saves about 17K. 
						
						
					 
					
						2019-08-20 23:21:56 -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 
							
						 
					 
					
						
						
						
						
							
						
						
							1f4d04687b 
							
						 
					 
					
						
						
							
							SPV 1.4: Implement the 5 new loop controls.  
						
						
						
						
					 
					
						2019-05-10 00:02:45 -06:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							4605e2ed2b 
							
						 
					 
					
						
						
							
							Implement GL_NV_cooperative_matrix  
						
						
						
						
					 
					
						2019-02-25 23:42:59 -06:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							9f2aec49e9 
							
						 
					 
					
						
						
							
							GL_EXT_buffer_reference  
						
						
						
						
					 
					
						2019-01-07 12:36:13 -06:00 
						 
				 
			
				
					
						
							
							
								Greg Fischer 
							
						 
					 
					
						
						
						
						
							
						
						
							d445bb2867 
							
						 
					 
					
						
						
							
							Create separate OpSource for each included file  
						
						
						
						
					 
					
						2018-12-28 12:06:43 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b23d232ec5 
							
						 
					 
					
						
						
							
							Licensing.  Fixes   #958 . Add licenes file and update copyrights.  
						
						
						
						
					 
					
						2018-12-14 10:47:35 -07:00 
						 
				 
			
				
					
						
							
							
								greg-lunarg 
							
						 
					 
					
						
						
						
						
							
						
						
							5d43c4aac7 
							
						 
					 
					
						
						
							
							SPV:  Fix   #1575 ,  fix   #1593 : Support HLSL #line  
						
						... 
						
						
						
						SPIR-V OpLines now contain filenames from HLSL-style #lines. 
						
						
					 
					
						2018-12-07 17:36:33 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5ff3c3da3b 
							
						 
					 
					
						
						
							
							Interfaces: Remove NV_EXTENSIONS from two more headers.  
						
						... 
						
						
						
						This also fixes some cpp files that uncover issues when building
with the flags turned off. 
						
						
					 
					
						2018-09-26 09:38:20 -06:00 
						 
				 
			
				
					
						
							
							
								Dan Sinclair 
							
						 
					 
					
						
						
						
						
							
						
						
							aac6d63716 
							
						 
					 
					
						
						
							
							Use unsigned int instead of uint32_t  
						
						
						
						
					 
					
						2018-09-25 16:32:06 -04:00 
						 
				 
			
				
					
						
							
							
								Dan Sinclair 
							
						 
					 
					
						
						
						
						
							
						
						
							257b25c81f 
							
						 
					 
					
						
						
							
							Add BUILD.gn configuration.  
						
						... 
						
						
						
						This CL adds the necessary configuration to build glslang inside a
Chromium checkout. Two build warnings were fixed in the process to
make things compile. 
						
						
					 
					
						2018-09-24 16:57:55 -04:00 
						 
				 
			
				
					
						
							
							
								Chao Chen 
							
						 
					 
					
						
						
						
						
							
						
						
							b50c02ef53 
							
						 
					 
					
						
						
							
							Add-support-for-SPV_NVX_raytracing  
						
						
						
						
					 
					
						2018-09-19 13:07:43 -07:00 
						 
				 
			
				
					
						
							
							
								Chao Chen 
							
						 
					 
					
						
						
						
						
							
						
						
							3a1379667d 
							
						 
					 
					
						
						
							
							0003-Add-support-for-SPV_NV_shader_image_footprint  
						
						
						
						
					 
					
						2018-09-19 13:07:42 -07:00 
						 
				 
			
				
					
						
							
							
								Jeff Bolz 
							
						 
					 
					
						
						
						
						
							
						
						
							36831c9bad 
							
						 
					 
					
						
						
							
							GL_KHR_memory_scope_semantics  
						
						
						
						
					 
					
						2018-09-06 20:36:14 -05:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							97068d8b30 
							
						 
					 
					
						
						
							
							Merge pull request  #1465  from otakuto/remove-execute-permissions  
						
						... 
						
						
						
						Remove execute permissions 
						
						
					 
					
						2018-08-31 08:14:47 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							31aa3d6019 
							
						 
					 
					
						
						
							
							SPV: only declare the pure 8/16-bit capabilities when needed.  
						
						... 
						
						
						
						Only when operations stray outside the 8/16-bit storage-capabilities
are the general (pure 8/16-bit) capabilities needed. 
						
						
					 
					
						2018-08-16 15:54:21 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							149afc3930 
							
						 
					 
					
						
						
							
							SPV: More corrections of <id> versus "immediate" operands.  
						
						
						
						
					 
					
						2018-08-14 13:31:43 -06:00 
						 
				 
			
				
					
						
							
							
								otakuto 
							
						 
					 
					
						
						
						
						
							
						
						
							d03da06ac1 
							
						 
					 
					
						
						
							
							Remove execute permissions  
						
						
						
						
					 
					
						2018-08-07 03:16:20 +09:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f04c51b3bd 
							
						 
					 
					
						
						
							
							Non-Functional: Add postprocess as more robust way to add capabilities  
						
						... 
						
						
						
						When capabilities are needed for specific SPIR-V instructions, it is
fragile to do so based on GLSL/AST usage; it should be based on actual
instructions they got translated to. 
						
						
					 
					
						2018-08-03 15:56:12 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5611c6d27b 
							
						 
					 
					
						
						
							
							GLSL/SPV: Implement SPV_EXT_descriptor_indexing and GL_EXT_nonuniform_qualifier  
						
						
						
						
					 
					
						2018-04-05 11:25:02 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5d610ee1dc 
							
						 
					 
					
						
						
							
							Implement SPV_GOOGLE_hlsl_functionality1.  
						
						... 
						
						
						
						Enabled via -fhlsl_functionality1 
						
						
					 
					
						2018-03-16 20:21:44 -06:00 
						 
				 
			
				
					
						
							
							
								Neil Roberts 
							
						 
					 
					
						
						
						
						
							
						
						
							eddb1318ae 
							
						 
					 
					
						
						
							
							Use the correct type for the constant for matrix/scalar division  
						
						... 
						
						
						
						When a matrix is divided by a scalar it tries to take the reciprocal
of the scalar to convert the operation into a multiply. However it was
always doing this by making a 32-bit constant. If the scalar is a
double then this would end up making an FDiv instruction with
different types in the operands.
This patch adds a helper method called makeFpConstant which makes a
floating-point constant of the given type. The code to take the
reciprocal now uses it to make the same type as the result.
Fixes https://github.com/KhronosGroup/glslang/issues/1278  
						
						
					 
					
						2018-03-13 13:50:56 +01:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							66011cb2c2 
							
						 
					 
					
						
						
							
							SPV: Implement Vulkan 1.1 features and extensions.  
						
						
						
						
					 
					
						2018-03-06 16:12:04 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							46413d5780 
							
						 
					 
					
						
						
							
							SPV:  Fix   #1258 : cache constant structs by id, not opcode.  
						
						... 
						
						
						
						Constants were generally cached by type opcode, but all structures share the
same type opcode (OpTypeStruct), so they need to be cached by type id. 
						
						
					 
					
						2018-02-26 19:35:39 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							57f6a016f0 
							
						 
					 
					
						
						
							
							SPV: Complete OpModuleProcessed implementation, enabled by have 1.2 headers.  
						
						
						
						
					 
					
						2018-02-22 19:36:18 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5c3eed542d 
							
						 
					 
					
						
						
							
							SPV: Create more access chains addressing a few swizzling issues.  
						
						... 
						
						
						
						- Fixes  #1233 
- Treats local bools like anything else
- more consistently deals with a dynamic component selection 
						
						
					 
					
						2018-02-06 07:24:12 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							a2858d9bdd 
							
						 
					 
					
						
						
							
							GLSL: Implement GL_EXT_control_flow_attributes.  
						
						... 
						
						
						
						See https://github.com/KhronosGroup/GLSL/pull/11 . 
						
						
					 
					
						2018-02-01 00:55:08 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2b5ea9f851 
							
						 
					 
					
						
						
							
							SPV Version: Emit the requested SPIR-V version, not the header version.  
						
						... 
						
						
						
						Fixes  #1236 . 
					
						2018-01-31 18:41:59 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2a27116cae 
							
						 
					 
					
						
						
							
							SPV reflection: Add OpModuleProcessed for compile options.  
						
						
						
						
					 
					
						2017-08-25 11:48:02 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fad6297206 
							
						 
					 
					
						
						
							
							SPV: Non-functional: support lists of decorations per parameter.  
						
						
						
						
					 
					
						2017-07-18 02:46:59 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							57e65929e4 
							
						 
					 
					
						
						
							
							HLSL: Translate directive [flatten] and [branch] to SPV control mask.  
						
						
						
						
					 
					
						2017-07-06 11:31:33 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							cabbb788b4 
							
						 
					 
					
						
						
							
							Implement extension GL_AMD_gpu_shader_int16  
						
						... 
						
						
						
						- Add int16 types (int16_t, uint16_t, i16vec, u16vec).
- Add int16 support to GLSL operators.
- Add int16 type conversions (to int16, from int16).
- Add int16 built-in functions. 
						
						
					 
					
						2017-06-09 17:11:23 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e485c7af58 
							
						 
					 
					
						
						
							
							SPV: Debug output: Include OpLine information for execution path.  
						
						... 
						
						
						
						Note that declaratives are not handled, only procedurals. 
						
						
					 
					
						2017-05-31 18:50:53 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							121853f4df 
							
						 
					 
					
						
						
							
							SPV: Add OpSource shader source code and file name.  
						
						
						
						
					 
					
						2017-05-31 17:14:15 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							470026f9d7 
							
						 
					 
					
						
						
							
							HLSL: Fix an issue of frexp().  
						
						... 
						
						
						
						The "exp" parameter is floating-point type in HLSL intrinsic while it is
integer type in GLSL built-in function. 
						
						
					 
					
						2017-03-29 17:12:40 +08:00