chaoc 
							
						 
					 
					
						
						
						
						
							
						
						
							6e5acae144 
							
						 
					 
					
						
						
							
							Add support for SPV_NV_geometry_shader_passthrough  
						
						
						
						
					 
					
						2016-12-20 13:28:52 -08:00 
						 
				 
			
				
					
						
							
							
								chaoc 
							
						 
					 
					
						
						
						
						
							
						
						
							0ad6a4e60d 
							
						 
					 
					
						
						
							
							Add support for SPV_NV_sample_mask_override_coverage  
						
						
						
						
					 
					
						2016-12-19 16:29:34 -08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							6a60c2f9ea 
							
						 
					 
					
						
						
							
							Linker: Walk the call graph to report an error on missing bodies.  
						
						
						
						
					 
					
						2016-12-08 23:22:21 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							517fe7a6ad 
							
						 
					 
					
						
						
							
							Non-functional: Rename some entry-point variables to entryPoint, not main.  
						
						
						
						
					 
					
						2016-11-26 13:31:47 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fca826212c 
							
						 
					 
					
						
						
							
							Always correctly terminate main. Issue  #588 , PR  #600 .  
						
						
						
						
					 
					
						2016-11-26 13:23:20 -07:00 
						 
				 
			
				
					
						
							
							
								chrgau01@arm.com 
							
						 
					 
					
						
						
						
						
							
						
						
							c3f1cdfa57 
							
						 
					 
					
						
						
							
							GLSL: The execution scope for barriers should be Workgroup.  
						
						
						
						
					 
					
						2016-11-14 10:10:05 +01:00 
						 
				 
			
				
					
						
							
							
								Jamie Madill 
							
						 
					 
					
						
						
						
						
							
						
						
							57cb69a3f1 
							
						 
					 
					
						
						
							
							Fix unrefenced variable warning with AMD_EXTENSIONS disabled.  
						
						
						
						
					 
					
						2016-11-09 13:49:24 -05:00 
						 
				 
			
				
					
						
							
							
								David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							bb5c02fd23 
							
						 
					 
					
						
						
							
							Add missing guard to code that uses AMD extensions  
						
						... 
						
						
						
						Otherwise compilation fails when ENABLED_AMD_EXTENSIONS is off. 
						
						
					 
					
						2016-10-19 10:17:25 -04:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							17ff343bf4 
							
						 
					 
					
						
						
							
							SPV: Add missing extension declarations for certain AMD extensions.  
						
						
						
						
					 
					
						2016-10-14 17:41:45 +08:00 
						 
				 
			
				
					
						
							
							
								Maciej Jesionowski 
							
						 
					 
					
						
						
						
						
							
						
						
							7208a974aa 
							
						 
					 
					
						
						
							
							SPV: Use SampledImage with OpImageQueryLod  
						
						... 
						
						
						
						Khronos SPIR-V issue #74  
						
						
					 
					
						2016-10-12 16:16:24 +02:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							f3b27471f8 
							
						 
					 
					
						
						
							
							SPV: Implement extension SPV_KHR_shader_draw_parameters.  
						
						
						
						
					 
					
						2016-10-11 14:40:35 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							ed33e05762 
							
						 
					 
					
						
						
							
							HLSL: Do structure conversion for return type struct-punning on non-entry-point functions.  
						
						
						
						
					 
					
						2016-10-06 13:06:13 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							074ced3e00 
							
						 
					 
					
						
						
							
							Merge pull request  #521  from yavn/frag-shader-primitive-id-capability  
						
						... 
						
						
						
						SPV: PrimitiveId in frag shader will emit OpCapability 
						
						
					 
					
						2016-10-01 11:38:18 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							c9e3c3c941 
							
						 
					 
					
						
						
							
							Parser: Implement extension GL_AMD_gpu_shader_half_float.  
						
						... 
						
						
						
						- Add built-in types: float16_t, f16vec, f16mat.
- Add support of half float constant: hf, HF.
- Extend built-in floating-point operators: +, -, *, /, ++, --, +=, -=,
  *=, /=, ==, !=, >=, <=, >, <.
- Add support of type conversions: float16_t -> XXX, XXX -> float16_t.
- Add new built-in functions. 
						
						
					 
					
						2016-09-30 16:13:06 +08:00 
						 
				 
			
				
					
						
							
							
								Maciej Jesionowski 
							
						 
					 
					
						
						
						
						
							
						
						
							04b3e8746f 
							
						 
					 
					
						
						
							
							SPV: PrimitiveId in frag shader will emit Geometry capability  
						
						... 
						
						
						
						Using PrimitiveId in a fragment shader requires declaring
an OpCapability with either Geometry or Tessellation. 
						
						
					 
					
						2016-09-27 10:35:09 +02:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							b707205b0d 
							
						 
					 
					
						
						
							
							SPV: OpGroupBroadcast is unable to handle vector operand.  
						
						
						
						
					 
					
						2016-09-26 15:53:40 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							36876e6408 
							
						 
					 
					
						
						
							
							SPV: Still have to specify SPIR-V extension for gl_SubGroupSizeARB and gl_SubGroupInvocationARB.  
						
						
						
						
					 
					
						2016-09-23 22:13:43 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							5159664475 
							
						 
					 
					
						
						
							
							SPV: Implement the extension SPV_KHR_shader_ballot  
						
						
						
						
					 
					
						2016-09-22 16:05:07 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							eee9d536bc 
							
						 
					 
					
						
						
							
							Track separate entry-point names and mangled names...  
						
						... 
						
						
						
						... and use each in the correct way at consumption sites.
This completes issue #513 . 
						
						
					 
					
						2016-09-19 18:09:30 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							6fccb3cd75 
							
						 
					 
					
						
						
							
							Non-functional: Sweep through the stack for consistent with "main" and entry point.  
						
						... 
						
						
						
						Partially addresses issue #513 . 
						
						
					 
					
						2016-09-19 16:01:41 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b3e24e4359 
							
						 
					 
					
						
						
							
							SPV: Fix issue  #506 : generalize struct deep copy to include arrays.  
						
						
						
						
					 
					
						2016-09-11 12:33:43 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							c9f349234f 
							
						 
					 
					
						
						
							
							SPV: Use OpBitcast to implement 4 pack/unpack built-in functions.  
						
						
						
						
					 
					
						2016-09-09 17:50:07 +08:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							64bcfdb632 
							
						 
					 
					
						
						
							
							Parser: Add 64-bit type conversion for specialization constant.  
						
						
						
						
					 
					
						2016-09-05 22:20:28 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4bf7155051 
							
						 
					 
					
						
						
							
							SPV: Flatten structs for copy when they are GLSL type aliases.  
						
						... 
						
						
						
						Addresses issue #304  and issue #307  by replacing unmatched type OpStores with
per-member copies. Covers assignment statements and most argument passing, but
does not yet cover r-value-based argument passing. 
						
						
					 
					
						2016-09-02 16:35:01 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f2b7f3353b 
							
						 
					 
					
						
						
							
							SPV: Tighten up number of struct-types declared based on decoration.  
						
						... 
						
						
						
						Takes some pressure off of issue #304 .
Structures don't inherit locations and then explicitly decorate
members with them, so removed this reason to have another instance
of a structure type. 
						
						
					 
					
						2016-09-01 17:05:23 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							2bbbe0621d 
							
						 
					 
					
						
						
							
							SPV: Some group invocation operations should be applied to scalars.  
						
						
						
						
					 
					
						2016-08-23 15:41:05 +08:00 
						 
				 
			
				
					
						
							
							
								Dan Baker 
							
						 
					 
					
						
						
						
						
							
						
						
							55d5f2d4df 
							
						 
					 
					
						
						
							
							HLSL: Changing SPIRV source language to unkown  
						
						
						
						
					 
					
						2016-08-15 16:05:45 -04: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 
							
						 
					 
					
						
						
						
						
							
						
						
							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 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							ce31aea0d0 
							
						 
					 
					
						
						
							
							SPV: Fix an issue of ++/-- for dvec/dmat.  
						
						
						
						
					 
					
						2016-07-29 16:13:04 +08: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 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							9d93a2370d 
							
						 
					 
					
						
						
							
							Implement 4 AMD-specific extensions.  
						
						... 
						
						
						
						- Support GL_AMD_shader_ballot (SPV_AMD_shader_ballot).
- Support GL_AMD_shader_trinary_minmax (SPV_AMD_shader_trinary_minmax).
- Support GL_AMD_shader_explicit_vertex_parameter
  (SPV_AMD_shader_explicit_vertex_parameter).
- Support GL_AMD_gcn_shader (SPV_AMD_gcn_shader). 
						
						
					 
					
						2016-07-20 16:18:05 +08:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4016e38bea 
							
						 
					 
					
						
						
							
							Build: Switch to Rev. 6 of headers, removing "BadValue" enum stuff.  
						
						... 
						
						
						
						Note: Technically, this is glslang's modified private copy of official headers.
Official headers will appear in other places, like
https://github.com/KhronosGroup/SPIRV-Headers . 
						
						
					 
					
						2016-07-15 11:55:34 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c45dddae5f 
							
						 
					 
					
						
						
							
							Merge pull request  #314  from mre4ce/master  
						
						... 
						
						
						
						Added -x option to save SPIR-V as 32-bit hexadecimal numbers to a text file. 
						
						
					 
					
						2016-07-08 15:26:27 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							78a4557621 
							
						 
					 
					
						
						
							
							SPV: Fix issue  #376 ; declare Geometry capability for fragment use of gl_Layer.  
						
						
						
						
					 
					
						2016-07-08 14:05:15 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							91e4aa5900 
							
						 
					 
					
						
						
							
							SPV: Further refine OpenGL vs. Vulkan differences for SPIR-V.  
						
						... 
						
						
						
						Includes adding test cases to verify the differences. 
						
						
					 
					
						2016-07-07 19:27:15 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2d0cc786f3 
							
						 
					 
					
						
						
							
							SPV: Turn on atomic-storage functionality for SPIR-V.  
						
						... 
						
						
						
						This is used by OpenGL, but not Vulkan.
Includes:
 - atomicCounter, atomicIncrement, atomicCounterDecrement
 - atomic_uint layout-offset checking
 - AtomicStorage capability 
						
						
					 
					
						2016-07-07 17:40:35 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							2f47bc9781 
							
						 
					 
					
						
						
							
							SPV: Don't decorate locations within an array, it doesn't make sense.  
						
						... 
						
						
						
						This fixes issue #360 . 
						
						
					 
					
						2016-06-30 22:00:09 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							6090df0fa3 
							
						 
					 
					
						
						
							
							SPV: Non-functional: break up big function into three smaller ones.  
						
						... 
						
						
						
						Also, improve variable names. This grew to be overly hard to understand. 
						
						
					 
					
						2016-06-30 21:28:33 -06:00 
						 
				 
			
				
					
						
							
							
								Rex Xu 
							
						 
					 
					
						
						
						
						
							
						
						
							c884b4a47f 
							
						 
					 
					
						
						
							
							SPV: Certain decorations are missing for structure-typed in/out variables.  
						
						
						
						
					 
					
						2016-06-30 13:11:36 +08:00 
						 
				 
			
				
					
						
							
							
								LoopDawg 
							
						 
					 
					
						
						
						
						
							
						
						
							6e72fddaa2 
							
						 
					 
					
						
						
							
							Add HLSL memory barrier intrinsics, fix dst, add lit & EvaluateAttributeSnapped  
						
						
						
						
					 
					
						2016-06-20 09:53:59 -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 
							
						 
					 
					
						
						
						
						
							
						
						
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							592860cae5 
							
						 
					 
					
						
						
							
							Add decompositions for some HLSL intrinsics.  
						
						
						
						
					 
					
						2016-06-10 17:11:18 -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 
						 
				 
			
				
					
						
							
							
								Jason Ekstrand 
							
						 
					 
					
						
						
						
						
							
						
						
							c24cc29d37 
							
						 
					 
					
						
						
							
							GlslangToSpv: Properly handle opaque types in TranslateStorageClass  
						
						
						
						
					 
					
						2016-06-08 17:05:19 -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